A2A 协议(Agent2Agent)

跨系统 Agent 协作的开放协议,用 Agent Card 发现能力、用 Task 表达协作。

生产方式:人写签发:晓黎学习复核:2026年9月21日被 3 个词条引用

一句话定义

A2A = 一套开放协议,让不同系统、不同厂商构建的 Agent 能够互相发现、委派任务并交换结果。

它由 Google 提出并贡献给 Linux Foundation。

解决什么问题

一个系统内的多 Agent 协作可以用内部 API 解决。但跨组织场景下,对方的 Agent 用什么框架、部署在哪里、如何认证,都是未知的。

A2A 提供统一的互操作层:

系统 A 的 Agent 需要调用系统 B 的 Agent
    ↓
1. 发现:读取 B 的 Agent Card
2. 认证:按 Card 声明的方式认证
3. 提交:创建 Task,发送 Message
4. 跟踪:轮询状态或接收推送通知
5. 获取:取得 Artifact

核心构件

构件作用
Agent Card描述 Agent 的能力、端点、认证方式的元数据
Task一次任务的完整生命周期
Message任务内的消息
Artifact任务产生的输出
Push Notification异步结果通知

Agent Card 示例:

{
  "name": "Financial Analysis Agent",
  "description": "Analyzes financial statements",
  "url": "https://example.com/a2a",
  "capabilities": { "streaming": true, "pushNotifications": true },
  "skills": [{ "id": "analyze-statements", "name": "Analyze financial statements" }],
  "authentication": { "schemes": ["oauth2"] }
}

能力发现是协议的一等公民——Agent 可以动态发现其他 Agent 的能力,而不需要预先硬编码对接关系。

与 MCP 的区别

协议连接对象抽象层次
A2AAgent ↔ Agent任务协作
MCPAgent ↔ 工具/资源工具调用

两者互补。Microsoft Agent Framework 明确把两者同时作为跨运行时互操作的基础:

cross-runtime interoperability via A2A and MCP

设计要点与代价

优点代价
跨组织互操作协议栈实现与维护成本
动态能力发现协议演进带来兼容性负担
不自创私有协议需要理解标准细节

相关

互链

链接来自概念卡正文里的双链,编译时能解到本期词条集的才成为站内链接。

反链(3)

出处

路径是本地知识库(Obsidian 库)里的位置,正文与概念卡逐字对应。

  • 概念卡原文A2A 协议(Agent2Agent)03_RESOURCES/概念/a2a-协议.md
  • 所属知识地图栏目概念页索引 · 协议与互操作03_RESOURCES/概念/Index.md
  • 正文引用的知识库笔记第 11 讲 Agent 通信02_AREAS/AI开发/Harness Engineering/Agent Harness 课程/11-Agent通信:消息、交接与协作协议.md

编译入库:2026年10月6日。词条由知识库编译而来, 修正要回到概念卡改,再重新编译。