自分の資料で、専門特化のエージェントを作るで、MCP(Model Context Protocol)に軽く触れました。「エージェントに道具を持たせる、共通の差し込み口」という話です。この記事は、そこだけを掘り下げます。
おさらい:USB-Cのようなもの
公式ドキュメントの説明はこうです。
“MCP (Model Context Protocol) is an open-source standard for connecting AI applications to external systems.”
(MCPとは、AIアプリケーションを外部のシステムに接続するためのオープンソースの標準規格である)
“Think of MCP like a USB-C port for AI applications.”
(MCPは、AIアプリケーションにとってのUSB-Cポートのようなものだと考えてほしい)
規格が共通なので、道具を作る側は1回作ればいろいろなエージェントから使ってもらえます。 逆に使う側も、エージェントを乗り換えても同じ道具をつなぎ直せます。
つながる先は、3種類に整理できる
公式は、MCPでできることをこう説明しています。
“AI applications like Claude or ChatGPT can connect to data sources (e.g. local files, databases), tools (e.g. search engines, calculators) and workflows (e.g. specialized prompts)”
(ClaudeやChatGPTのようなAIアプリケーションは、データソース(ローカルのファイル、データベースなど)、ツール(検索エンジン、電卓など)、ワークフロー(専用のプロンプトなど)につながることができる)
- データソース — 読みに行く先。ファイル、データベース、社内のドキュメントなど
- ツール — 実行できる機能。検索、計算、外部サービスの操作など
- ワークフロー — 定型の手順。「この形式でレポートを作る」のような、繰り返し使う指示のひな型
「読む」「実行する」「決まった手順を呼び出す」の3つが、MCPで繋がる相手の正体、とざっくり捉えておけば十分です。
Claude Codeでの使い方
Claude Codeでは、/mcpコマンドで接続中のサーバーを確認したり、有効・無効を切り替えたりできます。サーバーの追加は、ターミナルからclaude mcp addで行います。
# リモートのMCPサーバーをつなぐ例(Notion)
claude mcp add --transport http notion https://mcp.notion.com/mcp
公式ドキュメントによると、繋いだ先は例えばこんな使い方ができます。
- 「JIRAのENG-4521に書かれている機能を実装して、GitHubにPRを作って」
- 「SentryとStatsigを見て、この機能の利用状況を確認して」
- 「新しいFigmaのデザインに合わせて、メールテンプレートを更新して」
チャットに情報をコピペしている作業があれば、それがMCPサーバーをつなぐ合図だと公式は書いています。コピペの代わりに、エージェントが向こう側を直接読みに行けるようになるからです。
自分で1から作らなくても、Anthropic Directoryにレビュー済みのサーバーが並んでいて、そこから選んでclaude mcp addするだけで使えます。すでに動いているサーバーを流用する形なので、コネクタ経由でGmailやGoogleドライブとつながる仕組みも、公式いわく「Claude Codeと同じMCPの基盤」の上にあります。
ChatGPTも、実は同じ規格の上にいる
MCPは、Anthropicだけのものではありません。公式サイトのトップに、こう明記されています。
“AI assistants like Claude and ChatGPT … all support MCP”
(ClaudeやChatGPTのようなAIアシスタントは……すべてMCPに対応している)
コードを書かずに任せるエージェントで触れた、ChatGPTの中でCanvaやSpotifyなどのアプリが動く仕組み(Apps SDK)も、OpenAI公式ヘルプによればMCPを土台に拡張したものです。
「MCP=Claude Code用の設定ファイル」ではなく、業界全体が乗っている土管のようなもの、と捉えておくと実態に近くなります。VS CodeやCursorのような開発ツールも対応している、とMCP公式に並んでいます。
気をつけたいこと:つないだ相手を信頼できるか
便利な分、注意も要ります。Claude Code公式のセキュリティページには、こうはっきり書かれています。
“We encourage either writing your own MCP servers or using MCP servers from providers that you trust. … Anthropic reviews connectors against its listing criteria before adding them to the Anthropic Directory, but does not security-audit or manage any MCP server.”
(自分でMCPサーバーを書くか、信頼できる提供元のMCPサーバーを使うことをすすめる。……AnthropicはAnthropic Directoryに加える前に掲載基準に沿ってレビューするが、個々のMCPサーバーをセキュリティ監査したり管理したりはしていない)
「公式のディレクトリに載っている」は、「安全性まで保証されている」とは違う、ということです。
もう1つ、同じページに具体的な警告があります。
“Verify you trust each server before connecting it. Servers that fetch external content can expose you to prompt injection risk.”
(サーバーをつなぐ前に、信頼できるか確認すること。外部のコンテンツを取得するサーバーは、プロンプトインジェクションのリスクにさらす可能性がある)
外部から取り込んだ文章の中に、エージェントへの指示のようなものが紛れ込んでいて、意図しない動きをしてしまう——という話です。実際に管理人も、MCPの設定を確認させようとしてAPIキーが画面にそのまま表示されてしまったことがあります。
対策はシンプルです。
- 知らない提供元のサーバーは、むやみにつながない
- 使っていないサーバーは
/mcpで無効化しておく(トークンの節約にもなります) - 鍵のような機微な値は、設定ファイルに直書きせず環境変数で渡す(伏せたはずのAPIキーが、そのまま画面に表示された話を参照)
現実的な始め方
専門特化のエージェントを作るの締めと同じ結論になります。いきなり自分でMCPサーバーを書く必要はありません。
- まずは、コピペで済ませる。量が少ないうちはこれで十分です
- コピペが繰り返しの作業になってきたら、Anthropic Directoryに同じ用途のサーバーがないか探す
- 独自の社内システムなど、既製品がない場合だけ、自作を検討する(Claude Codeには、雛形を作ってくれる公式プラグインもあります)
繰り返す作業だけを、道具として固める。 ここでも、このサイトが繰り返している「必要になってから次の段へ」がそのまま当てはまります。
まとめ
- MCPは、AIエージェントを外部システムにつなぐための共通規格。公式いわく「AIアプリケーションにとってのUSB-C」
- つながる先は、データソース・ツール・ワークフローの3種類に整理できる
- Claude Codeでは
claude mcp addで追加し、/mcpで管理する - ClaudeもChatGPTも、同じMCPという規格の上で動いている。 Apps SDKもMCPの拡張
- 便利さと引き換えに、信頼できない提供元のサーバーはプロンプトインジェクションのリスクになる。ディレクトリ掲載は安全性の保証ではない
- 始め方は、コピペ→繰り返しに気づいたら既製のサーバーを探す→無ければ自作、の順