随着大语言模型(LLM)的快速演进,AI的应用正经历从“被动问答”到“主动代理(Agentic)”的根本性转变。在这场架构变革中,智能体如何与外部世界、工具以及其他智能体进行高效、安全的连接,成为了构建下一代AI基础设施的核心课题。
传统上,软件系统的互联依赖于API。然而,在构建高度自治、非确定性决策的智能体系统时,传统API正面临严重的结构性瓶颈。
为了攻克这一难题,Anthropic于2024年11月推出了模型上下文协议(Model Context Protocol,简称 MCP);
紧随其后,Google于2025年4月推出了智能体对智能体协议(Agent-to-Agent,简称 A2A)。
剖析智能体放弃传统API而拥抱MCP的深层原因,厘清A2A与MCP在协议边界上的核心区别,并明确不同业务场景下的技术抉择,是当前企业落地AI智能体架构的重中之重。
一、智能体从传统API向MCP演进的深层动因
在传统软件架构中,API是为人类开发者设计的,用于建立确定性、程序化的系统互联。
但在智能体主导的运行时环境中,这种静态接口设计暴露出明显的结构性缺陷。
-
传统API在智能体环境下的瓶颈
传统API通常采用RESTful或gRPC等标准,其本质是“契约式”的,在智能体生态中面临以下三重技术瓶颈:
-
动态发现能力缺失与硬编码依赖:
传统API的端点(Endpoints)是静态且硬编码的。智能体在面对海量的API时,无法在运行时动态理解某个新端点的语义、入参要求和执行边界。这导致开发人员不得不为每个端点编写繁琐的适配代码,造成了严重的“点对点拼接”瓶颈(即 集成问题)。
-
版本控制的脆弱性:传统API的参数变更具有破坏性。
一旦服务端修改了接口字段,智能体调用便会失败,这迫使系统必须进行频繁的版本迭代与代码重构。
-
上下文冗余与Token损耗:
传统API往往采用通用设计,返回的JSON响应可能包含数十甚至上百个字段。
对于LLM而言,Token是运行的“硬通货”,处理无关字段不仅会急剧消耗Token预算,还会向上下文窗口引入大量杂讯,从而提高模型产生幻觉的风险。
-
MCP作为语义化自适应图层的技术优势
MCP协议其核心理念借鉴了语言服务器协议(LSP)的经典模式。
MCP不再将接口视为死板的代码契约,而是将底层能力抽象为“自我解释的工具(Self-Describing Tools)”。
每一个通过MCP暴露的工具,都自带一段详尽的语义描述(Semantic Description),清晰说明该工具的作用、每个入参的物理与逻辑意义、预期的输出格式以及约束条件。
这种设计带来的范式转移在于:接口即文档(The Interface is the Documentation)。
智能体在运行时连接到MCP服务端,主动发起能力协商,获取当前可用工具的语义清单。
LLM凭借其语义理解能力,能够自主决定在何时、以何种参数调用这些工具,从而彻底消除了对硬编码客户端逻辑的依赖。
这种自适应机制将传统的“”集成复杂度,直接坍缩为标准化的“”插拔模式。
-
Token经济学与上下文衰退防御
盲目将现有的REST API包装为MCP服务端是常见的架构误区。在智能体架构中,Token消耗直接关系到运行成本和响应延迟。
若MCP服务端直接透传传统API返回的50个冗余字段,而模型实际仅需3个字段,将导致严重的Token浪费和上下文衰退(Context Rot)。
因此,优秀的MCP设计必须“面向模型进行重构”,将细粒度的底层API(如 createUser、updateUserAddress、resetUserPassword)抽象并聚合成高水平的模型操作能力(如 manageUserProfile),以契合模型的逻辑决策水平。
二、核心架构组件与职责划分
MCP遵循清晰的“宿主-客户端-服务端(Host-Client-Server)”三层拓扑结构,在确保多工具灵活接入的同时,在宿主边界内筑起坚实的隔离防线。
MCP的精妙之处在于将复杂的编排职责集中于宿主,而保持服务端的极度轻量与高内聚性。
-
MCP宿主(Host):
代表用户交互的起点与AI执行环境,例如AI集成开发环境(IDE,如Replit、Sourcegraph、Cursor)或宿主应用(如Claude Desktop、ChatGPT)。
宿主拥有LLM的完整控制权,保存全量历史对话,负责管理客户端实例生命周期,并处理最终的用户授权与安全决策。
-
MCP客户端(Client):
由宿主内部实例化,负责维护与特定服务端“1对1”的隔离连接。客户端在初始化阶段进行协议协商(Capability Negotiation),显式声明其支持的功能(如采样支持、通知处理),并双向路由符合JSON-RPC 2.0规范的消息。
-
MCP服务端(Server):
轻量级、自包含的进程或远程服务,专职向客户端暴露原子化的技术原语。服务端无法读取宿主内的完整对话历史,也无法感知其他服务端的存在,从而实现了强安全隔离。
三、A2A协议:水平协作的分布式架构规范
当AI智能体从小规模单体架构向大规模分布式集群演进时,不同智能体之间的水平协作成为新的技术痛点。
这些智能体往往由不同供应商托管、基于异构框架开发。为了打破系统孤岛,Google于2025年4月推出了智能体对智能体协议(A2A),并于同年6月将其捐赠给Linux Foundation,随后与IBM的智能体通信协议(ACP)进行了深度合并。
-
三层技术规范模型
A2A协议采用了分层设计,确保在不同的网络环境和通信载体下均能实现稳定的互操作性:
-
第一层:规范数据模型(Canonical Data Model):定义了协议的核心实体,包括智能体卡片(AgentCard)、智能体技能(AgentSkill)、任务(Task)、消息(Message)、消息片段(Part)、交付成果(Artifact)及扩展(Extension)。
-
第二层:抽象操作层(Abstract Operations):抽象出智能体间交互的行为指令,如发送消息(SendMessage)、发送流式消息(SendStreamingMessage)、获取任务状态(GetTask)、取消任务(CancelTask)以及拉取智能体卡片(GetAgentCard)。
-
第三层:协议绑定层(Protocol Bindings):负责将抽象操作映射到具体的物理协议上,目前官方已提供 JSON-RPC、gRPC 以及 HTTP+JSON/REST 三种标准绑定方案。
-
A2A 在现代 AI 协议栈中的生态定位
A2A 并不是孤立存在的,它位于一个多层协同的智能体互联协议栈中。
为了确保复杂的商业和交互场景能够顺畅落地,A2A 通常与以下协议配合使用:
-
A2A(智能体协同):处理智能体之间的横向任务委派、状态监控与成果交接。 -
MCP(工具接入):连接具体智能体与其所需的底层私有数据库、代码库或搜索引擎。 -
UCP(万用商业协议):标准化智能体之间的商品交易、询价、采购契约。 -
AP2(支付授权协议):处理智能体在执行交易时的支付授权与资金清算。 -
A2UI & AG-UI(界面呈现与流式交互):定义多智能体协作界面的流式渲染和前端卡片交互样式。
在构建复杂的大型企业级AI应用时,最优雅的架构设计方案是将 A2A 与 MCP 进行分层复合集成:
将 A2A 置于水平方向作为多智能体的协作与编排总线,将 MCP 置于垂直方向作为单个智能体获取本地工具与数据的执行通道。
下面以医疗健康联合会诊系统为例,展示这一分层协同架构的实际运行流程:
![图片[1]-AI智能体为何选择MCP而不是API - AI资源导航站-AI资源导航站](https://www.aitube.vip/wp-content/uploads/2026/07/20260709_6a4f4b59d37e4.jpg)
-
宏观任务分发(A2A编排层):
首席会诊规划智能体(A2A Client)接收到人类医生的宏观任务后,通过解析网络中其他专科智能体的 Agent Card,将任务分解。它向“文献检索智能体(A2A Server)”分发子任务 A(“检索某种靶点的最新临床论文”),同时向“临床实验智能体(A2A Server)”分发子任务 B(“汇总类似病患的历史用药反馈”)。
-
原子工具执行(MCP执行层):
文献检索智能体接收到任务后,由于其本地模型缺乏最新数据,它立即激活内部的MCP客户端。该客户端向专门对接外部医学数据库的 Pubmed MCP Server 发起连接,调用 query_pubmed_api 工具检索近三个月的研究文献,并读取 protein_3D_crystal 资源文件以获取靶点晶体模型。
-
异步成果交付与聚合:
文献检索智能体基于MCP返回的高精细上下文完成深度推理,提炼出候选的小分子化合物结构,并将该成果作为 A2A 任务的 Artifact 异步交付给首席规划智能体。首席规划智能体在聚合所有子任务的 A2A 成果后,向人类医生呈递最终的联合诊疗方案。












