模型上下文协议(Model Context Protocol,简称MCP)是一种开放标准,定义了连接大型语言模型应用与外部工具、数据源及其他系统的通用接口。在MCP出现之前,每个希望让模型访问工具(如文件系统、数据库或第三方API)的应用,通常都需要针对特定模型提供商的工具调用格式编写自定义集成代码,这意味着每一种模型与工具的组合都需要重复进行相同的集成工作。MCP通过规定单一协议解决了这一问题:任何工具只需实现一次,任何兼容的模型客户端即可连接使用。这种模式常被比作通用适配器,或如Anthropic自己所称的“AI应用的USB-C接口”。
起源与采用
Anthropic于2024年11月发布了MCP,将其作为开源规范推出,并同时提供了参考服务器与客户端实现。该协议被明确定位为开放标准,而非Anthropic的专有功能;其发布时附带了文档和软件开发工具包(SDK),旨在让任何开发者都能构建MCP服务器(用于暴露工具或数据集)或MCP客户端(用于将MCP支持嵌入基于模型的应用中)。到2025年,该协议获得了快速采用:多家竞争性AI实验室及主要软件公司纷纷宣布在其产品中支持MCP,同时社区也构建了大量MCP服务器,将模型与版本控制系统、项目管理软件、数据库及通信平台等常用工具连接起来。
设计
MCP基于客户端-服务器架构构建,并采用通用的消息传递传输层。一个MCP服务器向连接的客户端暴露三类核心能力:工具(tools),即模型可调用以执行操作或获取数据的函数,类似于传统的工具调用函数调用;资源(resources),即客户端应用可读取并提供给模型的数据或内容,例如文件内容或查询结果;以及提示词(prompts),即服务器为常见任务提供的预定义、可复用的提示模板。客户端(通常是AI应用或AI智能体框架)通过标准化协议发现服务器提供的能力,并请求执行工具调用或资源读取,底层模型则像使用任何其他工具调用接口一样,决定调用哪些工具。
意义
MCP解决的是AI智能体时代特有的扩展性问题:随着单个智能体需要访问越来越多的工具和数据源,同时单个工具提供商也希望支持越来越多的AI应用,缺乏共享标准导致需要大量定制的点对点集成,数量急剧膨胀而难以管理。通过统一双方的接口,MCP使工具构建者只需编写一次集成即可兼容所有支持MCP的客户端,也使应用构建者无需为每个工具单独编写代码即可支持任意兼容MCP的工具。在软件领域,这使其扮演了与早期标准化工作类似的角色(尽管历史尚短),并在2025年的行业讨论中被广泛视为支撑智能体化AI系统(即模型与众多外部能力相结合)的基础性基础设施。
局限性
作为一项早期标准,MCP在发布第一年的生态系统中仍存在若干不足,包括安全工具、认证约定以及可信服务器发现机制等方面的缺口。此外,将智能体连接到由不可信第三方编写的MCP服务器,会带来与任何外部工具调用集成相同的风险,例如恶意工具输出可能导致提示注入攻击。尽管如此,该协议在相对短时间内获得的跨行业广泛采用,仍被视为一项不同寻常的成就,反映出行业对互操作性的普遍需求、、尤其是在涉及大量并发工具连接的智能体应用日益普及的背景下。