A2A 協議是什麼?Google 推動的 AI Agent 通訊新標準

A2A(Agent-to-Agent)協議是 Google 於 2026 年 3 月聯合 50 多家技術合作夥伴發布的 AI 智能體通訊標準,旨在解決不同框架、开源码 Agent 之間的互操作性問題。與 MCP(Model Context Protocol)專注於「AI 與工具/資料」的連接不同,A2A 專門處理「Agent 與 Agent」之間的通訊,兩者形成互補關係,共同構成 AI 基礎設施的關鍵層。

簡單來說,A2A 讓一個使用 LangChain 建構的 Agent 能夠與另一個使用 CrewAI 开发的 Agent 無縫協作,實現真正的跨框架多智能體系統。

A2A 與 MCP:差異與互補關係

MCP 由 Anthropic 提出,定義了 AI 模型與外部工具、資料庫、API 的標準化連接方式,類似「AI 的 USB-C 接口」。而 A2A 則是「Agent 之間的 HTTP」,定義了智能體之間的通訊協定、任務協商與結果交換機制。

  • 職責分工:MCP 處理「AI 能做什麼」,A2A 處理「AI 能與誰協作」
  • 協定層級:MCP 為應用層協定,A2A 為通訊層協定
  • 應用場景:MCP 適合單一 Agent 擴展能力,A2A 適合多 Agent 協作系統

實務上,企業通常同時使用兩者:A2A 負責 Agent 間協調,MCP 負責各 Agent 與工具的連接。

跨框架 Agent 協作:如何實現?

A2A 協議的核心是「Agent Card」機制。每個 Agent 公開自己的能力清單(capabilities),其他 Agent 可以透過標準化的 JSON 格式發現並調用這些能力。通訊採用 JSON-RPC 2.0 協定,支援同步與非同步任務處理。

以下是 A2A Client 的基本實現範例:

from a2a_protocol import A2AClient, AgentCard

# 定義 Agent 能力
agent_card = AgentCard(
    name="Research Agent",
    capabilities=["web_search", "content_summary"],
    endpoint="https://agent.example.com/a2a"
)

# 建立客戶端連線
client = A2AClient(agent_card)

# 發送任務給另一個 Agent
response = client.send_task(
    task={"query": "Find latest A2A protocol news"},
    target_agent="analysis-agent"
)
print(response.result)

這個範例展示了如何讓 Research Agent 與 Analysis Agent 跨框架協作,雙方無需知道彼此的內部實現細節。

企業部署 A2A 的安全考量

在企業環境中部署 A2A 需要關注以下安全要點:

  1. 身份驗證與授權:Implement OAuth 2.0 或 JWT token 驗證,確保只有授權 Agent 才能相互通訊
  2. 傳輸加密:強制使用 TLS 1.3 加密所有 Agent 間流量
  3. 任務驗證:對跨 Agent 的敏感操作添加審批流程,防止惡意指令傳播
  4. 日誌審計:完整記錄所有 Agent 協作請求,支援合規與除錯需求

Google 在 A2A 規範中建議企業部署 Agent Gateway 作為統一進出口,統一管理安全策略。

與 LangGraph / CrewAI 的整合路徑

主流多智能體框架已陸續支援 A2A 協定:

  • LangGraph:可通過 langgraph-a2a 套件將節點包裝為 A2A Agent,支援跨圖(cross-graph)任務調度
  • CrewAI:CrewAI 3.0+ 內建 A2A Connector,讓不同 Crew 之間能夠透過標準介面協作

整合步驟通常為:首先為每個 Agent 定義 Agent Card,接著在專案中加入 a2a-client 依賴,最後配置 Agent 發現機制即可開始協作。

A2A 協議的出現標誌著 AI 基礎設施邁向標準化的重要一步,企業現在可以更靈活地組合不同來源的 Agent,構建真正模組化的 AI 系統。