Chapter 10 · Agent Communication Protocols
MCP、A2A、ANP,解决的是不同层级的“连接问题”
最重要的不是背协议细节,而是知道:MCP 管 Agent 与工具/资源的连接,A2A 管 Agent 与 Agent 的协作,ANP 更偏向大规模 Agent 网络的发现与路由。
MCPAgent ↔ Tool
能力接入标准
能力接入标准
A2AAgent ↔ Agent
任务委派与协作
任务委派与协作
ANPAgent ↔ Network
发现与路由
发现与路由
原则Protocol ≠ Framework
互操作 ≠ 内部实现
互操作 ≠ 内部实现
1. 为什么有 Tool Calling 了,还需要协议?
如果每个 Agent 都自己为 GitHub、数据库、文件系统、浏览器写一套适配器,集成成本会迅速膨胀。
Protocol 的核心价值 = Interoperability + Reuse + Standardized Discovery
2. MCP:Agent ↔ Tool / Resource
可以把 MCP 理解成 Agent 工具生态里的“标准接口层”。
MCP = Integration Standard
核心:MCP Server 不一定有 LLM。它可以只是一个把文件、数据库、GitHub、浏览器能力标准化暴露出来的服务。
3. MCP 里常见的三类能力
🛠
Tools
让 Agent 做事情。
run_python()
search_web()
query_database()
📄
Resources
让 Agent 读取数据或上下文。
file://README.md
repo://source
db://schema
🧭
Prompts
暴露可复用任务模板。
review_code
summarize_repo
analyze_bug
Tools = 做什么 Resources = 看什么 Prompts = 怎么组织任务
4. Tool Calling ≠ MCP
这是这一章最容易混淆的地方。
| 概念 | 解决的问题 | 例子 |
|---|---|---|
| Tool Calling | 模型决定调用哪个工具、参数是什么 | get_weather(city="青岛") |
| MCP | 这个工具从哪里来、如何发现、如何标准化接入 | 通过 MCP Server 暴露 weather tool |
Tool Calling = 决策机制 MCP = 接入协议
5. A2A:Agent ↔ Agent
当对方不是“一个函数”,而是一个有自己状态、工具、计划和运行周期的独立 Agent 时,就进入 Agent-to-Agent 协作。
区分:Code Agent 不是一个普通 Tool,因为它可能自己规划、调用多个工具、维护状态,并运行很久。
6. A2A 里三个很重要的抽象
🪪
Agent Card
描述 Agent 是谁、会什么、怎么连接。
name
description
skills
endpoint
auth
📌
Task
有生命周期的工作单元,不只是一次 RPC。
submitted
working
input-required
completed
📦
Artifact
正式任务产出,例如报告、代码、数据文件。
report.md
metrics.json
figure.png
Message 与 Artifact 的区别
| 对象 | 用途 | 例子 |
|---|---|---|
| Message | 沟通 | “我需要数据集路径” |
| Artifact | 正式交付 | result.csv、report.md |
7. ANP:Agent ↔ Network
ANP 更偏向大规模 Agent 网络里的发现、路由、注册与信任问题。
要解决的问题
谁会做这个任务?怎么找到它?怎么路由?怎么处理 Agent 上下线?
当前学习优先级
知道定位即可。对实际项目而言,当前通常先学 MCP,再理解 A2A,ANP 最后。
8. 安全:LLM 想执行 ≠ 系统允许执行
协议把能力接进来之后,权限控制比“会不会调用”更重要。
低风险
read_file:通常可自动允许。
中风险
write_file:限制在工作目录内。
高风险
delete_repo / send_email:需要额外确认。
Least Privilege:只给 Agent 完成任务所需的最小权限
9. 一页总结
MCP = Agent ↔ Tool / Resource
A2A = Agent ↔ Agent
ANP = Agent ↔ Network
Tool Calling ≠ MCP
Framework ≠ Protocol
LLM wants action ≠ LLM has permission
下一份:第 11 章——Agentic RL。重点做清楚 `Prompt → SFT → Reward → GRPO → Agent Policy`,以及“为什么有了 Tool / Memory 之后还要训练模型”。