AgentGrade
EnglishEspañol日本語中文
← ナレッジベース

A2A — Agent-to-Agent Protocol

A2A とは?

A2A(Agent-to-Agent)は、AI エージェントが互いに発見、認証、通信するためのオープンプロトコルです。エージェントをホストするサイトは、エージェントのアイデンティティ、機能、スキル、他のエージェントが到達できる URL を宣言する Agent Card/.well-known/agent.json の JSON マニフェスト — を公開します。プロトコルは Google によって 2025 年 4 月に導入され、同年後半に Linux Foundation に寄贈されました。

A2A は MCP とは異なるレイヤーに位置します。MCP はエージェントがツールを呼び出す方法を定義し、A2A はエージェントが別のエージェントを呼び出す方法を定義します。2 つは組み合わさります:MCP サーバーは単一のエージェントにツールを公開し、A2A エンドポイントはエージェント全体をより広いエージェントネットワークに公開します。

A2A が重要な理由

2025-2026 年のエージェントエコシステムは、マルチエージェントパターンに収束しています:ユーザー向けエージェント(Claude、ChatGPT、Gemini)が、他のサービスがホストするスペシャリストエージェントと連携します。旅行サイトの予約エージェントは 1 つのスペシャリスト;e コマースサイトの返金エージェントは別のスペシャリストです。ユーザー向けエージェントは、ベンダー別 SDK 統合なしで、それらのスペシャリストを発見し、何ができるかを学び、呼び出す方法が必要です。

A2A は、その発見とルーティングレイヤーのプロトコルです。Agent Card は呼び出すエージェントに伝えます:

A2A の仕組み

2 つの部分があります:Agent Card(発見)と A2A エンドポイント(実行)。

1. Agent Card/.well-known/agent.json の静的 JSON ファイルです。最小限の有効な Agent Card:

{
  "name": "Acme Support Agent",
  "description": "Handles customer inquiries, refunds, and order status.",
  "version": "1.0.0",
  "url": "https://acme.example.com/agent",
  "capabilities": {
    "streaming": true,
    "pushNotifications": false
  },
  "skills": [
    {
      "id": "process-refund",
      "name": "Process Refund",
      "description": "Issue a refund for a given order ID."
    }
  ]
}

2. A2A エンドポイント はカードに宣言された URL でそれらのスキルのリクエストを受け付けます。プロトコルは HTTP 上の JSON-RPC スタイルのメッセージング(ストリーミング用にオプションで SSE)を使用し、テキスト、ファイル、構造化データパーツを含む構造化メッセージ形式をサポートします。

A2A と他のエージェント相互運用プロトコル

プロトコル目的トランスポート公開するもの
A2Aエージェントが別のエージェントを呼び出しHTTP/SSE名前付きスキルを持つエージェント全体
MCPエージェントがツールを呼び出しJSON-RPC over HTTP/SSEサーバー上の個別ツール
OpenAPIエージェントが REST API を呼び出しHTTPスキーマ付き API エンドポイント
SKILL.mdエージェントにサービスの使い方を伝える静的 MarkdownHTTP サービスの散文プレイブック
WebMCPエージェントがブラウザを通じてウェブサイトを呼び出しブラウザ API注釈付き HTML フォーム

A2A は、これらの中で呼び出される側がエージェント自体であり、ツールや静的 API ではない唯一のものです。

Agent Card フィールド

AgentGrade の A2A チェックは、カードが存在し、JSON としてパースされ、少なくとも nameurl を含むことを検証します。

A2A を使用しているのは誰か

A2A は Google とパートナー連合の支援を受けて開始されました。2025-2026 年の公開採用者には以下が含まれます:

サービスに A2A を追加する方法

  1. 公開するエージェントがあるか決める。 A2A はエージェント用で、静的 API 用ではありません。
  2. Agent Card を作成する /.well-known/agent.json に。
  3. A2A エンドポイントを立ち上げる カードの URL に。github.com/google/A2A の Python SDK が参照実装です。
  4. 少なくとも 1 つのスキルを実装する。
  5. 呼び出し元でテストする。
  6. llms.txt または SKILL.md からリンク。

スキャナーがフラグを立てる一般的なエラー

FAQ

A2A は MCP の代替ですか?

いいえ。異なる問題を解決します。MCP はエージェントがツールを呼び出すため、A2A はエージェントが別のエージェントを呼び出すためです。

OpenAPI があれば A2A が必要ですか?

サービスがエージェントである場合のみ(推論、計画、ターン間で状態を保持)。

A2A は AgentGrade スコアリングに必要ですか?

A2A は情報チェックでスコアされません。

Agent Card が機能について嘘をついたらどうなりますか?

カードはエージェントが主張するものを宣言します。呼び出すエージェントは失敗したリクエストを通じて最終的に知ることになります。

複数の Agent Card を公開できますか?

仕様は origin あたり 1 つのカードです。

A2A と Google の Vertex AI Agent Builder の関係は?

Vertex AI Agent Builder は Google のホストされたエージェントランタイムで、A2A を生成・消費します。

エージェントは Agent Card をどう発見しますか?

/.well-known/agent.json の直接フェッチ、または /llms.txt からのリンクをたどります。

A2A は支払いをサポートしますか?

仕様には機能宣言が含まれていますが、支払いは基礎となる認証スキームに委任されます。A2A と x402 を組み合わせるサイトは通常、スキル説明で支払い要件を宣言します。

仕様の成熟度

オープンスタンダード、初期採用。 A2A は Linux Foundation によって統治されています。Python SDK は参照実装です。

詳細