ここでは、Model Context Protocol (MCP) が何かということと、 Cursor と組み合わせてどのように開発で活用するのかを説明します。
MCP とは?
MCP 公式ドキュメント によると、MCP は
「アプリケーションが LLM に対して context (情報) を提供するためのプロトコル」 です。
なんだかわかりにくい表現です。
わかりやすくいうと?
なので、誤解を恐れずに、私流のわかりやすい言葉で言うと、「アプリケーションが提供する、AI が理解しやすく連携のしやすいちょっとイケてる API」 です。
具体名を挙げて言うと、「Claude (AI) が Slack (ツール) を使えるようにするための API」です。
なぜ AI のための API と言えるのかというと、
-
MCPサーバー は LLM 自体を持っていません (これはよくある誤解だと思います)
- MCPサーバー は リクエストを受け取って、データ取得 (GET) や処理実行 (POST) を行うだけです。これはまさに API の GET / POST リクエストのようなものです
- LLM が「MCPサーバー から受け取ったデータを元にさらに考え」たり、「LLM が実行が必要だと思ったことを MCPサーバー を使って実行する」というフローで使用されます
-
MCP サーバーは簡単に作れます
- API のように、自分で作って、サーバーに公開すれば、誰でも使える MCPサーバー ができます
- 詳しい作り方は、Build your own MCP serverに書いてあります
さらに言うと、そのツールから、MCP が提供されていなくても、API が提供されていれば、そのツールは AI から使用できます。
ではなぜ MCP があるのかというと、API で連携する場合は、使用側(AI 側)で認証や連携部分を1つの API ごとに実装する必要があります。
それに対して、MCP の場合は、AI 側で MCP クライアント、ツール側で MCPサーバーを提供していれば、AI 側のMCP クライアントに JSON の設定を入れるだけですぐに使用できてしまいます。
最近AI エージェントという言葉をよく聞きますが、そこではたくさんのツールを組み合わせられることがポイントになると思います。
なので、簡単に色々なツールを連携できるようになる MCP はまさに、「AI エージェント時代に必須な仕組み」だと思っています。
誰が開発している?
-
Anthropic (Claude 開発元) が 2024 年 11 月に公開しました
https://www.anthropic.com/news/model-context-protocol - ただ、Claude 専用ではなく オープンなプロトコル です
構成要素
主に理解しておく必要がある要素は以下の2つです
-
MCP クライアント: MCPサーバーとやり取りする LLMを持つ 「呼び出し側」
- 例: ChatGPT、Cursor、Claude
-
MCP サーバー: LLM からのリクエストを受け取って、処理やデータ提供をする側
- 例: GitHub、Figma、Notion MCP (Notion は Notion AIを持つので、いつか MCPクライアントも持つようになるかもしれませんね)
- 大抵 「MCP」とだけいうときは、こちらを指します
もしあなたが何らかの LLM を使ったシステム (例: Bot など)を持っているのであれば、MCP クライアントを実装するだけで、Notion などの大量のアプリケーションがあなたのシステムで使えるようになります。
もしあなたが何らかの アプリケーション (例: Qiita) を持っているのであれば、MCP サーバーを実装すれば、Claudeからあなたのアプリケーションのデータを取得したり、操作したりできるようになります。
この図を見ても、API と同じ感じがしますね。
ちなみに、Anthropic から、MCP サーバー / クライアントの一覧も公開されています。
- サーバー: https://github.com/modelcontextprotocol/servers
- クライアント: https://modelcontextprotocol.io/clients
MCP の種類
現在公開されている代表的な MCP の種類はこちらです。
今 MCP というと、主に Tools を指していることが多く、Tools のみを提供しているMCP サーバーも多いので、一旦 Tools を押さえておくといいと思います。
種類 | 概要 | 例 |
---|---|---|
Tools | LLM がパラメータを入力して実行する関数 | GitHub で PR を作成 |
Prompts | ユーザーがパラメータを入力して実行する関数 | 手動で情報入力して API 実行 |
Resources | 静的ファイル/ドキュメント | Google Drive のファイルリスト |
Sampling | MCP サーバーから LLM に指示 | LLM 側での処理実行 |
Roots | API のエンドポイント構造 | REST API のファイルパス管理 |
Cursor での MCP 活用例
私は普段、以下のツールと Cursor + MCP サーバー を組み合わせて開発しています。
- Figma
- Linear
- GitHub
- Playwright
- Notion
以下で、それぞれ個別に実際の使用方法について説明します。
Cursor から MCP でツールを利用できるようにする設定方法
Cursor での MCP の設定はとても簡単で、
Cursor Setting -> Tools & Integrations から設定できます。
設定するには認証トークなどの必要な情報を持った JSON を mcp.json
に保存します。
例えば、Notionなんかはこのような JSON になります。
{
"mcpServers": {
"notionApi": {
"command": "npx",
"args": ["-y", "@notionhq/notion-mcp-server"],
"env": {
"OPENAPI_MCP_HEADERS": "{\"Authorization\": \"Bearer ntn_****\", \"Notion-Version\": \"2022-06-28\" }"
}
}
}
}
より詳しくは公式ドキュメントにまとまっています
Figma の MCP
公式の Figma MCP Server
非公式の Figma MCP Server
すでにデザインがあり、UIを実装するときに便利です。
できること例
- Figma の要素リンクを渡してデザイン取得(画像 or コードベース)
できないこと例
-
デザイン作成・編集 (できたらいいですね)
-
実装指示例:
Implement this component @[FigmaのURL] in @persmission-delete-modal.tsx
※ DevMode MCP Server を使う場合、Figma の Beta アプリを開いておく必要があり(私はこの制約があって、公式の MCP は使いにくいので、非公式の方の方を使用しています)
- 編集権限がないと、データが取得できず403になります
Linear
できること例
-
チケット URL or ID を渡すと
- チケット詳細取得
- ブランチ checkout
- Figma のリンク参照
プロンプト例
Based on this ticket, @https://linear.app/... checkout branch from develop and implement it.
Playwright
E2E テストで有名ですが、ブラウザ操作としても使い勝手が良いです。
できること例
- 特定 URL を開く
- 画面遷移・クリック操作
- スクリーンショット取得
- Playwright の locator 取得
プロンプト例
Run mm application locally, open it on browser, open the part you implemented, check if it is working properly and take the new tab's screenshot.
GitHub
gh
コマンドと、ほとんど同じ操作が可能です。
(Cursor はコマンドも打てるので、正直 gh
コマンドで足ります)
できること例
- PR 作成
できないこと例 (逆に言えば gh
でできないことはできないイメージです。)
- PR コメントへの画像追加
- ラベルやアサイン設定
Notion
Notion に書いてある仕様を参照したり、コードを基に資料を作ったりするのにべっんりです
できること例
- ページ参照 / 作成 / 更新が可能
プロンプト例
Based on this Notion, update model and add migration sql
- ただし Workspace の設定にはオーナー権限から、Integration の作成が必要です。組織の Notion と連携する場合は、オーナーに依頼する必要があります
その他便利 MCP
- Browser の console や network にアクセス → browser-tools-mcp
(余談) Cursor のおすすめ設定
ついでに、MCP を使う場合、以下の設定をしておくことをお勧めします。
-
auto-run
有効化:実行が楽 -
completion sound
ON:完了がわかりやすい - 使わない MCP 無効化:応答が速くなる
参考
- MCP 公式: https://modelcontextprotocol.io/
- Cursor 公式: https://cursor.com/
- Anthropic: https://www.anthropic.com/
- MCP サーバー一覧: https://github.com/modelcontextprotocol/servers