MCP vs API:なぜ従来のAPIはAIエージェントにおいて失敗するのか
従来のAPIはAIエージェントに対応できていません。
長年、開発者はRESTやGraphQLを使用してウェブアプリを構築してきました。これらのツールは人間にとっては使いやすく、決定論的なコードにとっても適しています。しかし、AIエージェントは異なります。AIエージェントは「意図」と「推論」に基づいて動作します。
LLMを人間の開発者のように扱うと、間違いを犯すことになります。その結果、動作が遅く、コストがかかり、壊れやすいシステムになってしまいます。
Model Context Protocol (MCP) は、この状況を変えます。これはAI接続のためのオープンスタンダードです。
統合の問題
従来のAPIを使用してAIを5つの異なるツールに接続する場合、25個のカスタムコネクタを書くことになります。これは「N × M」の問題であり、膨大な技術的負債を生み出します。
MCP はこれを解決します。MCP は「N + M」アーキテクチャを実現します。すべてのツールは1つのMCPサーバーを使用し、すべてのエージェントは1つのMCPクライアントを使用します。これはLLMのためのユニバーサルアダプターとして機能します。
AIにおいてMCPがRESTよりも優れている3つの理由:
1. 動的なディスカバリ
RESTでは、エンドポイントをハードコードする必要があります。エンドポイントを変更した場合、コードとプロンプトの両方を更新しなければなりません。一方、MCPは動的なディスカバリを使用します。エージェントはサーバーに対して「何ができるか」を尋ね、サーバーは利用可能なツールと機能のリストを返します。これにより、エージェントは即座に学習することができます。
2. トークン効率
従来のAPIは、しばしば巨大なJSONペイロードを送信します。AIの世界では、トークンはコストに直結します。肥大化したデータはレイテンシ(遅延)やコンテキストの劣化を引き起こします。また、無関係なメタデータが多すぎると、LLMは集中力を失います。MCPサーバーは、LLMのコンテキストウィンドウに最適化されたデータを返します。
3. ステートフルなセッション
RESTはステートレスです。しかし、AIエージェントには思考と行動の継続的なループが必要です。MCPはJSON-RPC 2.0を使用しており、これによりステートフルな交渉が可能になります。巨大なペイロードを再送することなく、アクションをまたいでコンテキストを維持できます。
MCPは主に3つの要素で構成されています:
- Tools(ツール): SQLクエリの実行など、モデルが行うアクション。
- Resources(リソース): ログファイルやドキュメントなどの読み取り専用データ。
- Prompts(プロンプト): モデルの推論をガイドするためのテンプレート。
MCPは、データベースや既存のAPIを置き換えるものではありません。それらのサービスをLLMに接続するために書かれる、壊れやすい「グルーコード(接着剤となるコード)」を置き換えるものです。
AIのためにJSONを文字列化するカスタム関数を作るのはもうやめましょう。スケーラブルなアーキテクチャの構築を始めましょう。
Source: https://dev.to/chaudharidevam/mcp-vs-api-why-traditional-apis-are-failing-ai-agents-28m8
