Model Context Protocol
MCP Specification: A specification of MCP that outlines the implementation requirements for clients and servers. MCP SDKs: SDKs for different programming languages that implement MCP. Model Context Protocol (MCP) の概念
Model Context Protocol (MCP) は、生成AI(LLM)と外部のシステムやサービスを、安全かつ効率的に双方向で接続するためのオープンプロトコル(標準規格)
しばしば「AIのためのUSB-Cポート」に例えられる
1. 提唱元と目的
発表: 2024年11月
目的: 従来の「N×M問題」(多数のLLMと多数の外部ツールを接続するために、全ての組み合わせで個別の統合開発が必要になる問題)を解決し、LLMアプリケーションの機能拡張を容易に標準化すること。
2. 主要な構成要素
MCPは、主に以下の3つの役割に分けられ、相互に通信します。
MCP ホスト (Host) 生成AIを搭載したアプリケーション本体。ユーザーからの指示を受け、クライアントを通じて外部機能を利用するかどうかを決定する。 Claude for Desktop、IDE(開発環境)のアシスタント機能など MCP クライアント (Client) ホスト(AIアプリ)とMCPサーバー間の通信の仲介役。ホストの要求に応じて、適切なサーバーを選び、データの流れやツールの実行を管理する。 ホストアプリケーションに組み込まれているコンポーネント MCP サーバー (Server) 特定の外部データソースやツールへのアクセスを提供する軽量プログラム。ファイルシステム、データベース、SaaSのAPIなど、具体的な機能を提供する窓口となる。 ファイルシステムにアクセスするサーバー、天候APIにアクセスするサーバーなど 3. MCPの主な特徴
オープンスタンダード: 誰でも自由に実装し、利用できるオープンなプロトコルです(MITライセンスで提供)。
双方向接続: AIが外部データや情報を取得するだけでなく、指示に基づいて外部システムにデータを書き込んだり、アクションを実行したりする(例: スケジュール登録、ファイルの移動)。
コンテキスト(文脈)の提供: AIモデルが判断を下すために必要な、特定のファイル、データベースレコード、外部APIの結果などの「文脈」を、標準化された形式でモデルに提供します。
安全性と制御性: AIが外部システムにアクセスする際、アクセス範囲の制限(Roots)や、ユーザーによる明示的な同意・承認を求める仕組みが組み込まれており、安全性を高めています。
参考文献
OpenAIによる言及: OpenAIも、自社のプラットフォームでMCPサーバーの構築に関するガイドを提供しています。