智能体通信的主流协议
MCP 与 ANP 简介
MCP(Model Context Protocol):一项开放协议,使得大模型应用能够无缝接入外部数据源和工具。无论是构建 AI 驱动的 IDE、增强聊天界面,还是创建定制的 AI 工作流,MCP 都提供了一个标准化的方式,将大模型与所需上下文连接。 Agent Network Protocol(ANP):为 Agentic Web 设计的开放协议框架。ANP 实现了去中心化身份认证,允许任意两个代理之间建立连接;同时设计了代理描述规范,以便代理间更高效地交换数据与协作。 在目前的代理通信协议格局中,ANP 可能是首个专为互联网代理设计的开源通信协议。
MCP 与 ANP 的区别
协议架构:CS vs. P2P MCP 协议架构
MCP 采用典型的客户端-服务器(Client-Server)架构。客户端使用 MCP 协议连接到 MCP 服务器,然后通过该协议访问服务器提供的各类信息和工具能力。
客户端与服务器可通过 stdio 或 HTTP 建立双向通信链路。使用 HTTP 时,客户端通过 HTTP POST 发送消息,并通过 HTTP SSE 接收服务器事件通知。
ANP 协议架构
ANP 则采用典型的点对点(Peer-to-Peer)架构,即任一代理均可使用 ANP 与其他代理连接。
目前,ANP 核心使用 HTTP 协议,代理可通过 HTTP 向其他代理发送和接收消息。理论上也支持 WebSocket 和私有传输协议。
ANP 选择 P2P 架构的主要原因,是为了让代理既能主动向其他代理发起请求,也能随时接收其他代理的请求。
在 MCP 的 CS 架构中,如果客户端未与服务器保持连接,服务器无法向客户端发送消息。当然,如果客户端同时具备服务器角色,MCP 在某种程度上也可勉强视为 P2P,但这并非真正的 P2P。真正的 P2P 架构不仅在物理连接上要对等,更在角色定位上要对等,这是 P2P 的核心。
|