
Model Context Protocol (MCP)とは
MCPの概要とCursorでの設定方法
はじめに
MCPとは「Model Context Protocol(モデルコンテキストプロトコル)」の略で、Anthropic社が開発したオープンプロトコルです。このプロトコルは、AIアシスタント(LLM)と外部データソースやツールとの間の標準化された接続方法を提供します。
MCPは、以下のような特徴を持っています:
-
普遍的な接続性: AIシステムが多様なデータソース(コンテンツリポジトリ、ビジネスツール、開発環境など)と接続できるようにします。
-
標準化された統合: 各データソースごとにカスタムコネクタを作成する代わりに、開発者は単一の普遍的なプロトコルに対して構築できます。
-
双方向接続: AIパワードツールとデータソース間の安全な双方向通信を可能にします。
-
オープンソースアプローチ: プロトコルはオープンソースであり、コミュニティ主導の採用とイノベーションを促進します。
-
AIパフォーマンスの向上: 関連データへのアクセスを改善することで、AIが生成する応答の品質と関連性を高めます。
MCPは、USBポートのようなものと考えることができます。USBが様々なデバイスを標準化された方法でコンピュータに接続できるように、MCPはAIモデルを様々なデータソースやツールに標準化された方法で接続できるようにします。
MCPのアーキテクチャ
MCPは、クライアント-サーバーアーキテクチャに基づいています:
- クライアント: LLMアプリケーション(Claude ConsoleやCursorなど)が接続を開始します。
- サーバー: コンテキスト、ツール、プロンプトをクライアントに提供します。
MCPは以下の主要コンポーネントで構成されています:
- プロトコル層: メッセージ、リクエスト/レスポンスのリンク、高レベルの通信パターンを処理します。
- トランスポート層: クライアントとサーバー間の実際の通信を処理します。MCPは複数のトランスポートメカニズム(Stdio、HTTP with SSE)をサポートしています。
CursorでのMCP設定方法
Cursorは、MCPクライアントを実装しており、任意の数のMCPサーバーをサポートしています。CursorのMCPクライアントは、stdioとsseトランスポートをサポートしています。
MCPサーバーをCursorに追加する方法
- Cursorの設定画面を開きます
- 「Model Context Protocol」セクションに移動します
- 「Add MCP Server」ボタンをクリックします
- 以下の情報を入力します:
- Name: MCPサーバーの名前
- Type: コマンドまたはSSE URL
- Command/URL: サーバーを起動するコマンドまたはSSE URL
設定例
例えば、Smitheryを使用してPuppeteerサーバーを追加する場合:
Name: Puppeteer
Type: command
Command: npx -y @smithery/cli@latest run @smithery-ai/puppeteer --config "{}"
または、Sequential Thinkingサーバーを追加する場合:
Name: Sequential Thinking
Type: command
Command: npx -y @modelcontextprotocol/server-sequential-thinking
MCPツールの使用方法
Cursorの「Composer」機能内のAgentは、MCPツールが「Available Tools」に表示されていれば、それらを自動的に使用します。ツールの使用を意図的に促すには、エージェントにツールを使用するよう指示するだけです。
エージェントがツールを使用することを決定すると、チャットにメッセージが表示され、ユーザーにツール呼び出しを承認または拒否するよう促します。ユーザーはメッセージを展開して、ツール呼び出しの引数を確認できます。
ユーザーがツール呼び出しを承認すると、エージェントはツールを使用し、チャットに応答を表示します。
まとめ
MCPは、AIアシスタントと外部データソースやツールとの間の標準化された接続方法を提供するオープンプロトコルです。CursorでMCPを設定することで、AIアシスタントの能力を拡張し、より効率的な開発ワークフローを実現できます。
MCPの設定時に問題が発生した場合は、「CursorでのMCP設定時のエラー対処法」の記事を参照してください。