Agent2Agent(A2A)とは?AIエージェント連携の仕組みとMCPとの違い

blue bright lights
Photo by Pixabay on Pexels.com

Agent2Agent(A2A)は、異なる環境で動くAIエージェント同士が、能力を確認し、仕事を依頼して、進行状況や成果物を受け渡すためのプロトコルです。単に文章を送り合う仕組みではなく、誰に何を頼めるか、依頼がどの状態にあるか、結果をどのような形で返すかを共通化します。

この記事では、A2Aが必要とされる理由から、基本要素、MCPとの役割分担、導入時に確認したい点までを順に説明します。AIエージェント自体の基礎を先に確認したい場合は、AIエージェントの仕組みと安全な運用も参考になります。

A2Aが共通化するもの

Googleは2025年4月、異なるベンダーや開発基盤で作られたAIエージェントの相互運用を目的としてA2Aを発表しました。ここでいう相互運用とは、内部のモデルや実装が異なっていても、共通の手順で相手の能力を確認し、依頼と結果を交換できることです。

A2Aは、異なるAIモデルそのものを同じものに変える仕組みではありません。各エージェントの内部構造を相手に公開することも前提にせず、エージェントを一つのサービスとして扱い、その外側のやり取りをそろえます。

A2Aの基本要素

A2Aの流れを理解するには、次の四つの要素を押さえると整理しやすくなります。

A2Aの主要要素
要素 役割 平易な言い換え
Agent Card エージェントの能力、接続先、対応形式、認証要件などを示す エージェントの案内票
Message 依頼、回答、追加情報など、一回のやり取りを表す 会話の一通
Task 状態を持つ仕事の単位として、進行中、完了、失敗などを追跡する 受付番号が付いた仕事
Artifact 文書、ファイル、構造化データなど、仕事の結果を表す 納品物

たとえば、顧客対応エージェントが請求処理を担当できるエージェントを探す場面を考えます。依頼側はAgent Cardで相手の能力と接続条件を確認し、Messageで問い合わせを送ります。時間がかかる処理ならTaskとして状態を追跡し、完了後に回答文や明細データをArtifactとして受け取ります。

短い処理には即時の応答を使い、時間がかかる処理には状態確認、ストリーミング、通知などを使い分けられます。ただし、どの方式に対応するかはエージェントの実装と公開された能力によって異なります。

A2Aが解きほぐす連携上の課題

従来の個別連携では、相手の機能を見つける方法、依頼の形式、進行状態、成果物の形式を組み合わせごとに決める必要がありました。連携先が増えるほど、接続部分の設計と保守も増えます。

A2Aは、この接続部分に共通の考え方を持ち込みます。

  • 能力の確認:依頼前に、相手が何をできるか、どの形式を扱えるかを確認する。
  • 仕事の委任:単発の応答だけでなく、状態を持つ仕事として依頼する。
  • 進行状況の共有:処理中、入力待ち、完了、失敗などを区別して扱う。
  • 成果物の受け渡し:文章だけでなく、ファイルや構造化データも結果として扱う。

共通仕様があることで接続方法をそろえやすくなりますが、すべてのエージェントが無条件に連携できるわけではありません。対応する仕様の範囲、データ形式、権限、業務上の意味を双方で合わせる必要があります。

セキュリティは実装と運用まで含めて考える

A2Aは、認証要件をAgent Cardで示し、Webで使われてきた認証方式やHTTPSを利用できるように設計されています。しかし、「A2Aに対応すれば安全になる」を意味しません。プロトコルは連携の枠組みを定めますが、誰に何を許可するか、受け取ったデータをどう検証するか、操作をどこまで記録するかは各システムが実装します。

業務で使う場合は、少なくとも次の点を決めておく必要があります。

  • 利用者とエージェントをどの方法で認証するか。
  • エージェントごとに、参照と更新のどこまでを許可するか。
  • 依頼内容と成果物に機密情報を含めてよいか。
  • 入力値、ファイル、外部から返る結果をどう検証するか。
  • 失敗、再試行、取消し、人による承認をどの段階に置くか。
  • 監査に必要な依頼者、処理内容、結果をどこまで記録するか。

利用例で見るエージェントの分担

顧客サポートと請求確認

顧客サポートエージェントが質問を受け、請求に関する確認だけを専門エージェントへ委任する例です。専門エージェントは許可された範囲で情報を確認し、結果を返します。顧客サポート側はその結果を会話の文脈に戻して案内します。

この構成では、顧客との対話と請求処理の責任範囲を分けられます。一方で、顧客情報を渡す条件、専門エージェントが実行できる操作、人へ引き継ぐ基準を先に決める必要があります。

会議記録と文書整理

会議記録を扱うエージェントが要点を整理し、文書管理を担当する別のエージェントへ保存を依頼する例です。依頼側は文書の題名、保存先、公開範囲を伝え、保存側は処理結果をArtifactとして返します。

A2Aが受け持つのはエージェント間の依頼と結果の交換です。音声認識の精度、要約内容の正しさ、保存先の権限設定まで自動的に保証するものではありません。

A2AとMCPの違い

Model Context Protocol(MCP)は、AIアプリケーションをデータ、ツール、外部システムにつなぐためのプロトコルです。A2Aは、独立して仕事を進めるエージェント同士の連携を主な対象にします。

A2AとMCPの役割の違い
比較項目 A2A MCP
主な接続相手 別のAIエージェント データ、ツール、外部システム
主な目的 能力の発見、仕事の委任、状態追跡、成果物の交換 利用できるデータや機能の提示と呼び出し
やり取りの例 顧客対応エージェントが請求エージェントへ調査を依頼する 請求エージェントが顧客データベースを検索する

両者は競合するとは限りません。一つの構成で、エージェント間の委任にA2Aを使い、各エージェントが必要なデータやツールへ接続する部分にMCPを使えます。MCP側の構成と安全設計は、MCPサーバーの仕組みと導入手順で詳しく説明しています。

導入前に整理したい設計項目

A2Aの採用可否は、「複数のエージェントをつなぎたい」という理由だけでは決められません。まず、委任する仕事と責任の境界を明確にします。

  1. 委任する仕事を定義する:入力、期待する結果、完了条件、人へ戻す条件を決める。
  2. 能力の公開範囲を決める:Agent Cardに示す機能と接続情報を必要な範囲に絞る。
  3. データ形式を合わせる:MessageとArtifactの項目、必須値、サイズ、機密区分を決める。
  4. 権限を最小化する:参照、作成、更新、削除を分け、仕事に必要な権限だけを与える。
  5. 異常時の流れを設計する:タイムアウト、重複実行、取消し、部分的な失敗を扱う。
  6. 人の確認を残す:支払い、公開、削除など影響の大きい操作には承認点を置く。

小さな業務と限定したデータから試すと、仕様への対応だけでなく、結果の品質、待ち時間、運用負荷、監査のしやすさも確認できます。

A2Aを理解するための要点

  • A2Aは、異なるAIエージェント間で能力、依頼、状態、成果物を交換するためのプロトコルである。
  • Agent Card、Message、Task、Artifactを押さえると、連携の流れを具体的に理解できる。
  • MCPは主にデータやツールとの接続、A2Aは主にエージェント同士の連携を担う。
  • 相互運用性は接続の共通化であり、回答の正しさ、業務上の安全性、権限管理を自動的に保証しない。
  • 導入時は、委任範囲、データ形式、認証と認可、異常処理、人の承認を一つの運用として設計する。

公式情報

投稿者 greeden

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)