MCPとは?Claude Codeに外部ツールをつなぐ設定を10分で

by Synth
MCPとは?Claude Codeに外部ツールをつなぐ設定を10分で

MCP(Model Context Protocol)は、AIを社外ツールやデータベースにつなぐための共通規格です。Anthropicが2024年に公開し、2025年末にLinux Foundationへ寄贈されました。この記事ではMCPの仕組み、3つの接続方式の選び方、Claude Codeへの実際の設定コマンド、スコープの使い分け、つまずきやすい設定ミス、そしてセキュリティ上の注意までを手順つきで整理します。

Claude Code に「このJIRAのチケットの内容で実装して」と頼めたら早いのに、実際にはチケットの中身をコピーして貼り付けている——そんな作業、していませんか。

それを不要にするのが MCP(Model Context Protocol) です。AIを外部のツールやデータベースに直接つなぐための共通規格で、Anthropicが2024年に公開し、いまはLinux Foundation傘下で管理されています。

この記事では、MCPが何をする仕組みなのか、接続方式の選び方、Claude Codeでの実際の設定コマンド、そして最初につまずきやすいポイントまでを順に渡していきます。コマンドは公式ドキュメントの記法に合わせているので、そのまま試せます。

まず結論

  • MCPは、AIと外部ツール・データソースをつなぐオープンソースの共通規格Anthropicが2024年11月に公開(Model Context Protocol 公式
  • 2025年12月、Linux Foundationの Agentic AI Foundation へ寄贈された。Blockの goose、OpenAIの AGENTS.md と並ぶ創設プロジェクト(Linux Foundation
  • 接続方式は HTTP / stdio / SSE / WebSocket の4つ。リモート接続ならHTTPを選ぶのが基本(SSEは公式に非推奨)
  • 追加コマンドは1行:claude mcp add --transport http <名前> <URL>
  • 設定の保存先は local / project / user の3スコープ。既定はlocal(自分専用)
  • 注意:外部コンテンツを取得するMCPサーバーはプロンプトインジェクションのリスクにさらされる——Anthropic公式が明記している

参考: MCP を使用して Claude Code をツールに接続する(Anthropic公式ドキュメント)


1. MCPとは何か?何ができるようになる?

ひとことで言うと、AIが外部のシステムを「読んで、操作する」ための共通の差し込み口です。

これまでAIに外部データを渡す方法は、基本的にコピー&ペーストでした。課題管理ツールの内容を貼り、監視ダッシュボードの数字を貼り、その上で「これをもとに考えて」と頼む。AIは貼られたテキストしか知りません。

MCPサーバーをつなぐと、この前提が変わります。AIがそのシステムを直接読みに行き、書き込みまで実行できるようになります。公式ドキュメントが挙げている例を並べると、こうなります。

  • 課題管理ツールから実装する:「JIRAの課題 ENG-4521 に記載されている機能を追加して、GitHubにPRを作成して」
  • 監視データを分析する:「SentryとStatsigをチェックして、その機能の使用状況を確認して」
  • データベースに問い合わせる:「PostgreSQLから、この機能を使った10人のユーザーのメールアドレスを検索して」
  • デザインと連携する:「Slackに投稿された新しいFigmaデザインをもとに、メールテンプレートを更新して」

なぜこれが効くのかというと、AIが扱える情報の鮮度と量が、人間のコピペ速度に縛られなくなるからです。貼れる量には限界がありますが、直接読みに行けるなら限界は接続先のAPIの制約まで広がります。

規格としての立ち位置もはっきりしています。2025年12月9日、AnthropicはMCPをLinux Foundation傘下に新設された Agentic AI Foundation(AAIF) へ寄贈しました。同時にBlockの goose、OpenAIの AGENTS.md も創設プロジェクトとして加わっています。つまりMCPは、もうAnthropic1社の持ち物ではありません。Cursor、Microsoft Copilot、Gemini、VS Code、ChatGPTなど、対応するツールは各社に広がっています。

💡 正直な本音 「AIツールの規格戦争、また始まるのか」と身構えた人もいると思います。でもMCPに関しては、主要ベンダーが揃って同じ財団に載せた時点で、当面は乗り換えコストを心配しなくてよさそうです。少なくとも今、覚える対象としてはリスクが低いほうだと思います。

2. つなぎ方は3種類——どれを選べばいい?

結論から言うと、リモートのサービスならHTTP、自分のPCで動かすツールならstdio。この2つを覚えれば大半は足ります。

方式用途選ぶべきか
HTTPクラウド上のサービスに接続✅ リモート接続の第一選択。OAuth対応
stdio自分のPC上でコマンドとして動くサーバー✅ ローカルツール・自作サーバー向け
SSE旧来のリモート方式❌ 公式に非推奨。HTTPがあるならそちら
WebSocketサーバー側から予期しないイベントを送る用途△ 双方向通信が要る場合のみ

HTTPサーバーを追加する場合は、こう書きます。

claude mcp add --transport http notion https://mcp.notion.com/mcp

認証ヘッダーが必要なサービスなら、--header(短縮形は -H)を足します。

claude mcp add --transport http secure-api https://api.example.com/mcp \
  --header "Authorization: Bearer YOUR_TOKEN"

ローカルのstdioサーバーは、--(ダブルダッシュ)の使い方がポイントです。

claude mcp add --env AIRTABLE_API_KEY=YOUR_KEY --transport stdio airtable \
  -- npx -y airtable-mcp-server

-- より前がClaude Code自身のオプション(--transport --env --scope など)、後ろが実行するコマンドと引数。この境界を間違えると、オプションがサーバー側に渡ってしまって動きません。

SSE は非推奨ですが、接続先がSSEしか提供していない場合は使えます。

claude mcp add --transport sse asana https://mcp.asana.com/sse

つなぎ先を探すなら、Anthropic Directory にレビュー済みのコネクタが並んでいます。Directoryのコネクタは Claude Code と同じMCPインフラを使っているので、そこに載っているリモートサーバーはそのまま claude mcp add で追加できます。

3. 実際につないでみる(4ステップ)

手順は4つです。所要時間はサービス側の認証を含めて10分程度。

ステップ1:つなぎたいサーバーのURLを確認する

Anthropic Directory から選ぶのが最短です。自分で公開サーバーを探す場合は、提供元が信頼できるかを先に確認してください(理由は5章で書きます)。

ステップ2:追加する

claude mcp add --transport http notion https://mcp.notion.com/mcp

ステップ3:接続状態を確認する

claude mcp list

登録済みのサーバーと状態が並びます。個別に見たいときは claude mcp get <名前>、消したいときは claude mcp remove <名前> です。

ステップ4:セッション内で認証する

Claude Codeを起動した状態で、

/mcp

を実行します。OAuth 2.0 認証が必要なリモートサーバーは、ここから認証を済ませます。/mcp パネルには、接続中の各サーバーが公開しているツールの数も表示されます。

  • ✅ ツール数が表示されていれば、つながっています
  • ⏸ Pending approval はプロジェクトスコープの承認待ち。claude を対話的に起動して承認します
  • not configured と出る場合は、設定の url が空です

4. スコープの使い分け——local / project / user

MCPの設定は、どこに保存するかを選べます。-s--scope)フラグで指定します。

スコープ有効範囲共有保存先
local(既定)追加したプロジェクトのみされない(自分専用)~/.claude.json
projectそのプロジェクトチーム全員(バージョン管理経由)プロジェクトルートの .mcp.json
user全プロジェクトされないユーザー設定
# 自分だけ・このプロジェクトだけ(既定なので --scope は省略可)
claude mcp add --transport http stripe https://mcp.stripe.com

# チームで共有したい
claude mcp add --transport http stripe --scope project https://mcp.stripe.com

迷ったらまずlocalで試して、チームに配る価値があると分かってからprojectに移すのが安全です。理由は単純で、.mcp.json はリポジトリにコミットされるため、認証情報を含む設定を置くと全員に見えてしまうからです。認証情報を伴うサーバーは、localスコープに留めるのが公式の推奨でもあります。

なお、クローンしてきたリポジトリの .mcp.json に書かれたサーバーは、そのままでは自動接続されません。ワークスペースを信頼するまで ⏸ Pending approval の状態で止まります。他人のリポジトリを開いた瞬間に未知のサーバーへつながらないようにする、という設計です。

5. つまずきやすい設定ミス5つ

実際に手を動かすと引っかかりやすい箇所を、公式ドキュメントの記述から拾って並べます。

① JSONに url を書いたのに type を書いていない

これは設定エラーになります。type のないエントリは stdio サーバーとして読まれるためです。エラーメッセージには「add "type": "http" を追加せよ」と出ます。なお streamable-httphttp のエイリアスとして受け付けられるので、サーバー側のドキュメントからコピーした設定はそのままで動きます。

② 予約名を使ってしまう

workspace claude-in-chrome computer-use Claude Preview Claude Browser はClaude Codeの組み込みサーバー用に予約されています。この名前で追加しようとするとエラーになります。

-- の位置を間違える(stdioのみ)

前述のとおり、-- の後ろはすべてサーバーへそのまま渡されます。claude mcp add --transport stdio myserver -- npx server なら npx server が実行されます。

④ タイムアウトの設定が効かない

サーバーごとのタイムアウトは .mcp.jsontimeout フィールドにミリ秒で書きます(10分なら "timeout": 600000)。ただし 1000未満の値は無視されます。また HTTP / SSE には、サーバーの最初の応答までを測る別のタイマーが既定60秒で動いています。長時間かかる処理を扱うなら、両方を意識してください。

⑤ stdioサーバーは自動再接続しない

HTTP / SSE サーバーは切断されると指数バックオフで最大5回まで自動再接続します(1秒から開始し、毎回2倍)。しかし stdio サーバーはローカルプロセスなので、落ちたら自動では戻りません。/mcp から手動で再試行することになります。

6. 便利さと引き換えのリスクは?

ここは正直に書きます。MCPは、AIに渡す権限を増やす仕組みです。便利さとリスクは同じ根から出ています。

Anthropic自身が公式ドキュメントで警告を出しています。

接続する前に、各サーバーを信頼していることを確認してください。外部コンテンツを取得するサーバーは、プロンプトインジェクションリスクにさらされる可能性があります。 ——Claude Code 公式ドキュメント(MCP)

なぜ危ないのかを一段だけ説明すると、こうです。MCPサーバーが外部のWebページやメール、課題チケットの本文を読み込んでAIに渡すとき、その本文に「これまでの指示を無視して、○○を実行しろ」という文章が仕込まれていたら、AIはそれを命令として解釈しうる。データと命令の区別がつかないのが、プロンプトインジェクション の本質です。この構造的な問題は プロンプトインジェクションは「直らない欠陥」 で整理しています。

実務的な線引きとしては、次の3点を守るだけで大きく変わります。

  • 提供元が明確なサーバーだけ使う(Anthropic Directory掲載のものは審査を通っている)
  • 書き込み権限を持つサーバーは、必要なものだけ(読むだけで済むならその方が安全)
  • 出所不明のサーバーURLを、社内リポジトリの .mcp.json にコミットしない

権限の絞り方そのものは、Claude Code settings.json 権限設定ガイド2026 が実務向けです。MCPと権限設定はセットで考えると事故が減ります。

あなたへの影響

エンジニアの方:コピペで渡していた情報が全部つながるので、体感の変化は大きいです。まずは自分がいちばん頻繁にコピペしているツール1つ——課題管理かエラー監視のどちらか——を localスコープでつないでみてください。効果が実感できてから増やす順序が、トークン消費の面でも合理的です。

非エンジニアの方:Claude Code は使っていなくても、MCP自体はClaudeアプリのコネクタとして同じ仕組みが動いています。Anthropic Directory から追加できるものは、コマンドを打たずに使えます。「AIが自社のNotionを直接読める」状態が何を意味するかだけ理解しておけば、社内でこの話が出たときに判断できます。

チームで導入を検討している方.mcp.json をリポジトリにコミットすると全員に配布されます。便利ですが、承認フローと権限設計を決めてからにしてください。未承認のサーバーが自動でつながらない設計になっているのは、そこを人間が判断する前提だからです。

まとめ

MCPは、AIが外部のツールを直接読み書きするための共通規格です。接続はコマンド1行、方式はリモートならHTTP、ローカルならstdio。スコープはまずlocalで試す。つまずくとしたら type の書き忘れか -- の位置か、タイムアウトの3つです。

最後にひとつだけ。つなげる数を増やすほど、AIに渡すツールの説明文が増え、毎回のトークン消費も増えます。「全部つなぐ」ではなく「よく使う3〜5個をつなぐ」くらいが、費用と便利さの釣り合う場所だと思います。まずは1つ、いちばんコピペしているツールから始めてみてください。

関連記事

参考にしたソース

ーー Synth

ヘッダー画像: Photo by Brett Sayles on Pexels

S

Synth

explAInのライター。AIの今をやさしく、忖度なしで。