MCPのアーキテクチャとコンポーネント構成
MCPは以下の3つのコンポーネントをオーケストレートすることで統合の複雑性を解消する。
3つの主要エンティティ
┌─────────────────────────────────────────┐
│ MCPホスト(Claude Desktop等) │
│ ┌──────────────────────────────────┐ │
│ │ MCPクライアント │ │
│ │ ├─ 1対1ステートフルセッション │ │
│ │ ├─ LLM要求を標準MCPへ変換 │───┼──→ MCPサーバー A (GitHub)
│ │ └─ サーバー機能の動的発見・管理 │ │
│ └──────────────────────────────────┘ │───┼──→ MCPサーバー B (Slack)
│ セキュリティポリシー適用、同意管理 │ │
└─────────────────────────────────────────┘───┼──→ MCPサーバー C (DB)
MCPホスト(MCP Host)
LLMが稼働するコンテナ環境(例:Claude Desktop、AI IDE、カスタムチャットUI)。
- ユーザー対話の起点
- セキュリティポリシーの適用と同意管理
- 複数のクライアント・インスタンスの調整を担う
MCPクライアント(MCP Client)
ホスト内に構築され、特定のサーバーと1対1のステートフルなセッションを維持するコンポーネント。
- LLMの抽象的な要求を標準化されたMCP形式へ変換
- サーバーの機能を動的に発見・管理
MCPサーバー(MCP Server)
特定のデータ(GitHub、Google Drive等)やツールを公開する独立した軽量プログラム。
- ホスト側からのリクエストに応じ、プリミティブを通じて情報提供や副作用を伴うアクションを実行
- → コアプリミティブの詳細はMCPのプロトコル仕様・トランスポート・コアプリミティブ
関連
引用元: NotebookLM