MCP vs. ADK――競合ではなく「連携」で動く最新AIエージェントの裏側:押さえるべき役割分担
AIエージェント開発で注目を集める「MCP」と「ADK」について、Red HatとIBMのエンジニアが役割の違いを解説した。両者は競合する存在ではなく、補完し合う関係だという。
AIエージェント開発において頻出する重要技術に「MCP」(Model Context Protocol)と「ADK」(Agent Development Kit)がある。2つは何が違うのか、AIエージェントを作るには、どちらを使えばいいのか。
Red Hatのシニアデベロッパーアドボケイトのセドリック・クライバーン氏とIBMのAIエンジニア兼デベロッパーアドボケイトのアンナ・グトブスカ氏が、それぞれの役割や違い、具体的なユースケースを紹介する。
開発者が直面する「2つの本質的な問い」
併せて読みたいお薦め記事
パフォーマンス監視の関連記事
両氏によると、AIエージェントを開発する際、エンジニアは必ず以下の2つの壁にぶつかるという。1つ目は、「どのように外部のツールやデータと接続させるか?」。2つ目は、「AIエージェント自体の思考ロジックやAIエージェント群の構築、オーケストレーションをどうするか?」だ。クライバーン氏は、前者に使うのがMCPであり、後者に使うのがADKだと説明する。
MCPは「AIと外部システムをつなぐ共通規格」
MCPはAnthropicが策定したオープン標準であり、AIモデルやAIエージェントが外部システムへアクセスするための“接続ルール”を定義する。
従来、LLM(大規模言語モデル)からデータベースやファイル、Webサービスなどへ接続するには、各エンジニアが個別の連携コードを書く必要があった。例えばPostgreSQLへ接続するコード、GitHub APIを呼び出すコード、Slack連携コードなどを、それぞれ独自実装するケースが一般的だった。MCPは、この“ばらばらな接続実装”を標準化する仕組みだ。
MCPでは、AI側(クライアント)と、外部ツールを公開する側(MCPサーバ)がJSON-RPC形式で通信する。ローカル環境では標準入出力(stdin/stdout)、Web環境ではHTTPストリーミングを使って接続する仕組みだ。
さらにMCPには以下の3つの主要機能がある。
- Tools
- Web検索やSQL実行など、LLMが呼び出せる機能
- Resources
- ファイルやデータベースなど、LLMが参照できる情報源
- Prompts
- 再利用可能なプロンプトテンプレート
これにより、一度MCPサーバを構築すれば、ClaudeやGPT、Geminiなど異なるLLMでも同じ接続基盤を再利用できる。
ADKは「AIエージェントを構築・制御するためのフレームワーク」
一方、ADKはGoogleが提供するPythonベースのオープンソースフレームワークだ。ADKは、AIエージェントそのものをどのように構築し、複数エージェントをどう制御するかに重点を置いている。
ADKについてグトブスカ氏は、「単なるLLM+プロンプトではなく、予測可能でテスト可能なAIシステムを構築するための仕組み」と説明している。
同氏によると、ADKには以下の主要構成要素がある。
- Agents
- AIエージェント本体
- Tools
- 外部APIやコード実行機能
- Memory
- 長期記憶
- State
- セッション中の短期状態
- Events/Runners
- 実行制御や状態遷移管理
特徴的なのは、ADKが「推論型エージェント」と「ワークフロー型エージェント」を使い分けられる点だ。
推論型はLLMが柔軟に判断する。一方ワークフロー型では「順番通りに処理する」「並列処理する」「ループする」といった制御を厳密に定義できる。これによって、AIの“気まぐれな挙動”を抑えやすくなる。
両氏は、ADKの利点として以下を挙げている。
- マルチエージェント構成を作りやすい
- 状態管理やメモリ管理を組み込みで利用可能
- デバッグや挙動追跡が容易
- モデル依存を避けやすい
- MCPサーバをツールとして利用可能
例えば、AIエージェントを「調査エージェント」「コード生成エージェント」「検証エージェント」など役割で分け、それらを統括する“オーケストレーターエージェント”を構築するといった設計も可能だ。
MCPとADKは“競合”ではなく補完関係
クライバーン氏は、MCPとADKを混同するエンジニアは増加傾向だと指摘し、「両者は別レイヤーの技術」だと話す。
例えば、「リポジトリを検索し、テストを走らせ、バグを自動デバッグするコーディングアシスタント」を作る場合、以下の通りに役割を分担する。
- ADK
- AIエージェントの思考・推論・ワークフローを制御する
- 「どのようにしてリポジトリを調べるか」「テストが落ちた時にどのようにリトライするか」「本番DBを消さないためのガードレールをどのように敷くか」といった、AIエージェントの思考回路、記憶管理、タスクの割り振りを担う。
- AIエージェントの思考・推論・ワークフローを制御する
- MCP
- GitHubやテストツール、Issue管理システムと接続する
- AIエージェントが「実際にコードを読み書きする」「テストの実行環境を叩く」「Jiraのチケットを更新する」といった場面で外部ツールとの通信方法を標準化する。
- GitHubやテストツール、Issue管理システムと接続する
ADKで構築したAIエージェントの「ツールの供給源」として、任意のMCPサーバをそのままプラグインすることも可能だ。
エンジニアは「どちらか一方を選ぶ」のではなく、これらをレイヤーごとに組み合わせることで、安全で堅牢(けんろう)なシステムを少ない工数で構築できるようになる。
本稿は、IBM Technologyが2026年5月18日に公開した動画「MCP vs ADK:How Modern AI Agents Connect and Work Together」を基に作成しました。
Copyright © ITmedia, Inc. All Rights Reserved.