MCP、A2A 与智能体互操作性
观察日期与维护状态
Section titled “观察日期与维护状态”观察日期:2026-07-23。
适用范围:Model Context Protocol specification version 2025-11-25,以及观察日期可见的 Agent2Agent Protocol specification 页面。
维护状态:持续维护的领域笔记。当任一协议发布稳定的主要修订,改变认证或安全要求,或新增会影响宿主、服务器或智能体实现的兼容性要求时,应重新审阅。
MCP 和 A2A 解决的是不同的互操作问题。
MCP 把宿主环境连接到外部上下文和可调用能力。其规范覆盖 tools、resources、prompts 等服务器能力,也包含关于用户同意、工具描述和不可信内容的安全指导。当模型宿主需要一种通用方式去发现并调用外部服务器提供的能力时,MCP 最有用。
A2A 处理智能体之间的交互。其规范描述 agent cards、tasks、messages、parts、artifacts 和 event streams,使一个智能体或客户端能够发现另一个智能体的能力并交换工作。当独立构建的智能体需要围绕任务沟通,而不是让某个模型调用本地工具时,A2A 最有用。
这两个协议可以互补。一个面向用户的宿主环境可以用 MCP 访问工具和资源,同时用 A2A 把工作委托给另一个智能体服务。但边界很重要:MCP 本身不是“智能体对智能体”,A2A 本身也不是工具沙盒。
持久工程含义
Section titled “持久工程含义”协议兼容只是互操作的第一层。
协议可以描述消息格式、发现文档和传输事件。它不能保证两个系统对“批准”“完成”“来源”“紧急”“客户”或“安全”有相同理解。它不能决定哪个主体正在行动、哪个租户拥有数据、委托了什么权限、哪个结果被接受,或哪个组织需要为坏结果负责。
因此,要把协议适配器视为执行边界和信任边界。它应该保留发起主体、委托范围、任务目的、数据分类、审批状态、追踪标识符和结果证据。当必要的身份、授权或兼容性字段缺失时,它应该默认拒绝。
对于长时间运行的工作,要直接测试生命周期语义。调用方能否取消任务?能否恢复?部分产物由谁拥有?如果流式传输结束,但外部影响的结果未知,会发生什么?重复的任务更新是否幂等?人能否接管?协议可以提供消息结构;系统必须定义运行契约。
不要这样理解
Section titled “不要这样理解”不要因为系统“发现”了某个能力,就认为它是安全的。被发现的工具或智能体描述,在宿主环境验证之前都是不可信输入。工具描述和 agent card 都可能影响模型行为,因此应纳入提示词注入和供应链威胁模型。
不要从语法兼容推断语义兼容。一个合法的 A2A task message 仍然可能缺少你的工作流所需证据。一个合法的 MCP tool 仍然可能对当前用户暴露过宽的操作。
不要因为规范已经公开,就推断生态已经成熟。公共规范很重要,但部署仍然需要一致性测试、版本协商、回退路径、运行遥测和事件预案。
- 在发布记录中固定协议版本和实现版本。
- 维护可信 MCP 服务器、A2A 对端、tool、resource 和 agent card 的允许列表;记录负责人和审查日期。
- 在经过中介处理前,把描述、prompt、resource 和对端提供的任务内容都视为不可信上下文。
- 跨协议边界保留发起主体、租户、委托权限、目的和审批状态。
- 在本地执行边界验证工具调用、任务请求、产物和回调。
- 测试取消、重试、未知结果、重复消息、过期更新和部分产物。
- 将协议追踪记录连接到应用追踪记录和已接受结果。
- 当远端对端无法完成、解释或安全继续任务时,提供人工接管路径。
- 在确切对端、版本、任务类型和证据要求经过测试之前,不要宣称互操作性已经成立。
参考文献及其使用方式
Section titled “参考文献及其使用方式”- Model Context Protocol specification, 2025-11-25 - 协议规范,用于说明 MCP 能力范围和版本固定。
- MCP, “Tools” - 协议规范页面,用于说明当前工具发现和调用语义。
- MCP, “Security Best Practices” - 项目维护的安全指导,用于说明同意、工具描述和不可信内容风险。
- Agent2Agent Protocol specification - 协议规范,用于说明当前 A2A 概念,例如 agent cards、tasks、messages、artifacts 和 event streams。
- Capabilities, Authority, and Execution Boundaries - Fieldbook 章节,用于将协议发现与权限和已接受外部影响区分开。
- Multi-Agent Systems - Fieldbook 章节,用于说明委托、协调和移交职责。