A2A 协议:让不同公司、不同框架的 Agent 像「同事」一样协作

a2aproject/A2A(2.6 万 star,Linux Foundation 托管、Google 贡献)定义了 Agent2Agent 开放协议,解决「不同公司、不同框架、不同服务器上的 Agent 如何像 Agent 一样协作」而非「像工具一样被调用」。它基于 JSON-RPC 2.0 over HTTP(S),用 Agent Card 发现能力,支持同步请求、SSE 流式与异步推送,并已提供 6 种语言 SDK。

A2AInteropProtocolMulti-agentJSON-RPC

MCP 解决了「Agent 怎么调用工具」,A2A 解决的是另一个维度的问题:「Agent 怎么调用 Agent」。a2aproject/A2A 这份由 Google 贡献、Linux Foundation 托管的开放协议,核心目标是打破不同框架、不同公司、不同服务器之间 Agent 的孤岛。工程上它有四个值得记住的设计:传输层用 JSON-RPC 2.0 over HTTP(S),这是互联网上最成熟、最易互操作的 RPC 约定;能力发现靠 Agent Card,一张描述「这个 Agent 会什么、怎么连」的元数据卡片;交互形态同时支持同步请求、SSE 流式和异步推送通知;数据交换覆盖文本、文件与结构化 JSON。协议还配套了 Python、Go、JS、Java、.NET、Rust 六种 SDK,并和 DeepLearning.AI 合开了一门短课程。

对《从零到精通 Agent Harness》的学习者,A2A 的价值在于它把「多 Agent 协作」从一个具体框架的 API 抽象成了可互操作的协议:你不需要让所有 Agent 都长在同一个框架里,只要它们会说 A2A 这门「通用语」,就能跨框架编排成顺序或层级工作流。课程里 A2A 与 MCP 的分工是理解多 Agent 架构的钥匙——MCP 管「Agent ↔ 工具」,A2A 管「Agent ↔ Agent」。对《从零上手 Codex》的学习者,了解 A2A 能帮你把视野从「一个 Codex 实例」扩展到「多个 Agent 各司其职、彼此委派」的协作图景,这正是课程后期「从单 Agent 到多 Agent」那一讲的引子。