



在软件开发领域存在一个难题,我们可以称其为“ M × N 问题”:当多个应用( M )需要对接多个外部扩展( N )时,如果缺乏统一的标准,每一对组合都得单独适配。这意味着每新增一个应用或一个扩展,整体的集成工作量就会按照 M × N 的复杂度增长。例如,从3个应用和4个扩展增加到4个应用和5个扩展时,工作量会从适配12个连接关系增加到适配20个连接关系。
在AI应用开发领域,这个问题尤其突出。AI应用需要调用各类外部工具来扩展自身的能力,比如获取实时信息、访问数据库、处理本地文件等。但AI应用和工具往往来自不同的开发团队,缺少统一的对接标准,这就导致开发者需要为每个AI应用-工具组合单独开发适配逻辑——重复劳动多,沟通成本高,维护难度也越来越大。
通过一个通用的协议,解决AI应用与外部工具的集成难题,是MCP设计的出发点。 图1-1中所示是使用MCP降低 M × N ( M 、 N 均为4)问题复杂度的一个示例。
    图1-1 通过MCP降低 M × N 问题的复杂度
2024年11月25日,Anthropic公司以MIT许可证开源发布MCP,成为AI发展历程中的一个重要里程碑。
MCP是Model Context Protocol的缩写,中文译为“模型上下文协议”。MCP约定了AI应用如何规范地集成外部工具,实现为大模型(Large Language M odel)补充上下文( C ontext)的目的,其本质是应用层协议( P rotocol)。
协议即标准。标准的制定,是为了推动行业形成一种共识。共识一旦形成,不仅能降低重复开发的成本,更能推动整个生态系统有序、快速地发展。
我们可以用“秦始皇统一六国”的例子来简单类比MCP诞生的意义。战国时期,七国各自为政,使用不同的文字、货币和度量衡,不同小国之间交流困难,经济、文化、科技发展缓慢。秦始皇统一六国后,为了方便管理,统一了文字、货币和度量衡。从此,各国之间的交流变得方便,经济、文化、科技发展迅速。
“一法度衡石丈尺。车同轨,书同文字。”
——《史记·秦始皇本纪》


