はじめに
MCP はエージェントを tools/data に接続します。しかし、エージェントを別のエージェントに接続する必要がある場合はどうでしょうか? Google によって開発された A2A (エージェント間プロトコル) は、この問題を解決します。
1. A2A 対 MCP
| MCP | A2A | |
|---|---|---|
| 接続 | エージェント ↔ ツール/データ | エージェント ↔ エージェント |
| モデル | クライアント/サーバー | ピアツーピア |
| 発見 | ツールスキーマ | エージェントカード |
| 使用例 | DBを読んでAPIを呼び出す | エージェント間でタスクを委任する |
2. エージェントカード
{
"name": "Research Agent",
"description": "Tìm kiếm và tổng hợp thông tin",
"capabilities": ["web_search", "summarize", "translate"],
"endpoint": "https://research-agent.example.com/a2a",
"input_schema": {...},
"output_schema": {...}
}
3. フレームワーク間の通信
A2A を使用すると、LangGraph のエージェントが CrewAI、AutoGen、またはその他のフレームワークのエージェントと通信できるようになります。
概要
- A2A = エージェント間通信用のプロトコル
- エージェント カード = 機能発見の自己説明
- MCP + A2A = 完全な接続 (ツール + エージェント)
- フレームワーク間の相互運用性
演習
- 3 人の異なるエージェントのエージェント カードを作成する
- シンプルなA2Aサーバーを実装する
- 2 つのフレームワークの 2 つのエージェントが通信するデモ
- 比較: 直接通話と A2A プロトコル経由