ほぼあらゆるものにプロトコルと標準が存在します。テクノロジー同士がどのように連携すべきかについて全員が合意できれば、一般的に有益です。そのため、エージェント型AIを規定する最初のプロトコルが登場するのは時間の問題でした。
Anthropicのモデルコンテキストプロトコル(MCP)は、良くも悪くも、こうしたプロトコルの中でも特によく知られているものの1つです。昨年導入されたMCPは、モデルを外部データストア、API、その他の機能やツールに接続しやすくする一方で、新たなセキュリティ脅威の波を招くことになりました。
しかし、勢いを増しているAI中心のプロトコルはMCPだけではありません。4月のGoogle I/Oでは、Chocolate FactoryがAgent-to-Agent(A2A)プロトコルを発表しました。一見すると、MCPとA2Aは確かによく似ています。どちらもクライアントサーバーアーキテクチャを共有し、基盤となるメッセージングプロトコルやトランスポートプロトコルの多くを共有しており、比較的未成熟であるにもかかわらず、業界から大きな支持を得ています。
これはVHSとベータマックスの規格争いの再来だ、と思われても仕方ないでしょう。AIの巨人2社が、どちらのプロトコルが優位に立つかを競い合っているのです。しかし実際には、MCPとA2Aは全く異なる問題に取り組んでおり、これらをめぐる混乱の多くは、AIエージェントとは一体何を指すのかという曖昧な定義に根ざしています。そこで、この点を明確にしておきましょう。
大まかに言えば、エージェントは一般的に非常にシンプルです。通常、エージェントは何らかのモデルを備えており、そのモデルは情報を解釈し、それに基づいて何をするかを決定します。このモデルは、タスクを取得または実行するための様々な関数やツールにアクセスできる場合があります。
例えば、ログエージェントは、APIエンドポイントを定期的にポーリングするツールを使用します。異常が検出された場合は、別のツールを使用してサポートチケットを作成し、人間のオペレーターによるレビューを依頼します。これらのエージェントが十分に信頼できるようになれば、給与、医療費、病欠といった煩わしい従業員を大量に削減できる可能性があります。初期の試験運用では、エージェントの導入には長い道のりが残されていますが、大手テクノロジー企業はすでに、最初に誰を解雇するかの計画を立てています。
これらのエージェントが互いに通信するためのより優れたプロトコルが、その実現に役立つ可能性があります。そしてここでMCPとA2Aが活躍します。MCPについては4月に詳しく解説しましたが、簡単に言えば、このプロトコルは「AIシステムとデータソースを接続するための普遍的なオープンスタンダード」です。
言い換えれば、MCPは、モデルがSQLデータベース、Kubernetesクラスター、既存のAPIなどの既存のリソースとやり取りするための標準化された方法を提供します。このプロトコルは標準的なクライアントサーバーアーキテクチャに準拠しており、JSON-RPCを使用して情報が交換され、特定のユースケースに応じてStdio、HTTP、またはSSEを介して送信されます。
MCPのアーキテクチャの概要は次のとおりです。出典:modelcontextprotocol.io - クリックして拡大
ここで重要なのは、MCPはモデルとツールの機能を標準化された方法で公開することで、それらの間の通信を容易にするように設計されていることです。AnthropicがMCPをAI版USB-Cのようなものだと表現しているのはそのためです。しかし、以前に検討したように、これは多くの方法の一つに過ぎません。例えば、LangChainでも同様の機能を実現できます。
MCPがUSBだとすると、A2Aはイーサネットのようなものと考えることができます。A2AはJSON-RPC、HTTP、SSEも使用しますが、エージェント間の通信を容易にすることを目的としています。
Google の A2A プロトコルの仕組みを詳しく説明します。 - クリックして拡大
これらのコミュニケーションは、かなり予測可能な経路を辿ります。まず、システム内のエージェントが、氏名、権限、連絡先、認証方法が記載された名刺を交換するディスカバリーフェーズから始まります。これらのエージェントカードには、SSE経由のデータストリーミングなどのオプション機能や、取り込みまたは返信できる形式(テキスト、画像、音声、動画など)に関する詳細も記載されています。
エージェントが互いを認識するようになったので、片方のエージェントがクライアントとして、もう片方のエージェントがサーバーとして動作し、互いにタスクを送信できるようになります。ただし、これらの役割は必ずしも固定ではなく、エージェントは状況に応じてクライアントまたはサーバーとして機能する可能性があることに注意してください。
タスクが作成されると、エージェントサーバーはタスクIDとともにメッセージを返します。このIDはタスクの進行状況を追跡するために使用されます。これは、長時間実行されるジョブでは特に重要です。クライアントはサーバーを定期的にポーリングするか、両方がSSEをサポートしている場合はサーバーが自動的に進行状況を更新することもできます。
これにより、タスクは、ユーザーのメールアドレスやサポートチケットの重大度など、処理を続行するために必要な情報が不足している場合にフラグを立てることができます。タスクが完了すると、結果はアーティファクトの形式でサーバーからクライアントに送信されます。アーティファクトには、テキスト、画像、構造化JSONなど、さまざまな要素が含まれる場合があります。
前の例に戻ると、ログ エージェントは、診断を実行し、自動的に解決できるか、または人間の入力が必要かどうかを評価できる別のエージェントに、A2A 経由でサポート チケットを送信する場合があります。
A2A の背後にある重要な推進力は、真に有用なエージェント システムは、社内で開発されたものやソフトウェア ベンダーによって提供されたものなど、複数のより特化されたエージェントから組み立てられるという考えです。
プロトコルに関する限り、A2A は、エージェントが目標を達成するために MCP を使用しているかどうかを気にしません。一部のタスクはリアルタイムで完了しない可能性があるため、エージェントがすべて同じ言語を話し、機能、制限、および進行状況を明確に伝達していることのみを気にします。
- Asanaの最先端のAI機能でデータ漏洩問題が発生
- アントロピック・クロード4モデルは以前よりもユーザーを脅迫することに積極的である
- MCP を使い始めるために必要なものすべて – Anthropic の AI 向け USB-C
- AIエージェントはオフィス業務を約70%間違えており、その多くはAIそのものではない。
Google が今春の I/O で A2A を発表して以来、このプロトコルは、Accenture、Arize、Atlassian、Workday、Intuit など、モデルビルダー、クラウドプロバイダー、ソフトウェアベンダーなどから幅広いサポートを受けています。
また、Amazon、Microsoft、Cisco、Salesforce、SAP、ServiceNow の支援を受けて、Google は 6 月に A2A プロトコルを Linux Foundation に寄贈する意向を発表しました。
MCPとA2Aはどちらもこれまでテクノロジー大手から強力な支持を得てきましたが、AIエコシステムはまだ初期段階にあり、技術の発展は衰える気配がありません。一方、標準化団体は、特に何かをどのように行うべきか、どの機能を定義すべきか、あるいは定義すべきでないかといった点で意見の相違がある場合、迅速に行動する実績があまりありません。そのため、エージェントシステムへの理解が深まるにつれて、新たな標準やプロトコルが登場する可能性は十分にあります。®