MCPとは
Model Context Protocol
LLMアプリケーションと外部のツール・データソースを標準化された方法で接続するオープンプロトコル
ひとことで言うと
AIと外部のツールやデータを、決まったやり方でつなげるための共通規格。
概要
MCP(Model Context Protocol)とは、LLMアプリケーションが外部のツール・データソース・システムと連携するためのインターフェースを標準化するオープンプロトコル。 従来、LLMを様々な外部システム(ファイルシステム、データベース、SaaSサービス等)と連携させるには、連携先ごとに個別の実装が必要だった。 MCPは、ツールやデータソースを提供する側(MCPサーバー)と、それを利用するLLMアプリケーション側(MCPクライアント)のやり取りを共通のプロトコルとして定義し、一度実装したMCPサーバーを複数のLLMアプリケーションから再利用できるようにする。 AnthropicがOSSとして公開し、対応するLLMアプリケーションやツール提供元が急速に増えたことで、エージェント開発における事実上の標準インターフェースの1つになりつつある。
背景
LLMアプリケーションが増えるにつれ、同じ外部システム(GitHub、Slack、社内データベース等)への接続をアプリケーションごとに個別実装する重複が問題になっていた。 MCPは、USB等ハードウェアインターフェースの標準化と同様の発想で、ツール・データ連携の実装を標準化し再利用しやすくするため考案された。
歴史
2024年11月: Anthropicが、LLMアプリケーションと外部データ・ツールを接続するオープン標準としてMCPを公開。 2025年: OpenAIやGoogle DeepMind等、他の主要なAIベンダーもMCPのサポートを表明し、業界横断的な標準として採用が広がる。
アーキテクチャ
MCPは、ツールやデータへのアクセスを提供する「MCPサーバー」と、それを利用する「MCPクライアント(LLMアプリケーション)」から構成される。 サーバーは、利用可能なツール・リソース・プロンプトのテンプレート等を標準化された形式でクライアントへ公開し、クライアントは、タスクの遂行に必要なものを選んで呼び出す。 通信にはJSON-RPCが用いられる。
利点
- 一度実装したMCPサーバーを、複数の異なるLLMアプリケーションから再利用できる
- ツール・データ連携の実装が標準化され、開発・保守の重複を減らせる
欠点
- 標準化されたプロトコルである分、特殊な連携要件への対応は独自実装より柔軟性に欠けることがある
- 比較的新しい仕様であり、エコシステムやセキュリティのベストプラクティスが発展途上の部分がある
比較
関連用語
よくある質問
MCPとFunction Callingの違いは?
Function Calling(Tool Calling)は、LLMが単一の呼び出しの中でどの関数をどんな引数で呼ぶかを決める仕組み。 MCPは、そうした呼び出しの対象となるツールやデータソースをどう発見・提供・接続するかを標準化するプロトコルという、より上位のレイヤーに位置する。
参考文献
- Official WebsiteModel Context Protocol
- BlogAnthropic: Introducing the Model Context Protocol