Claude Code MCP設定方法|サーバー追加と使い方を実例解説
Claude CodeはMCP(Model Context Protocol)というオープンな標準規格で、GitHubやファイルシステムなど外部のツール・データソースに直接アクセスできます。この記事では claude mcp add によるサーバー追加、local/project/userのスコープの違い、/mcp での状態確認・OAuth認証、実用例までをコマンド例つきで解説します。
MCPとは何か・前提環境
MCPは、AIがツールや外部データソースと接続するためのオープンソースの標準規格です。サーバーをつなぐと、Issueトラッカーの内容をコピペしなくても、Claudeが直接そのシステムを読み書きできます。「GitHubのIssue #123を実装してPRを作成して」のような指示が、実際の外部アクセスを伴って実行できるイメージです。
この記事はターミナル版のClaude Codeを対象にしています。あらかじめインストールとログインを済ませておいてください。設定項目全体は「Claude Code設定完全ガイド」を参照してください。
claude --version
2.1.211 (Claude Code)
claude mcp addでサーバーを追加する
接続方式には主にHTTP・SSE(非推奨)・stdio(ローカルプロセス)があり、クラウドサービスに接続する場合はHTTPが推奨方式です。
# 例: Notionに接続する
claude mcp add --transport http notion https://mcp.notion.com/mcp
ローカルで動くツールにはstdioを使います(例は後述)。Claude自身のオプションとサーバーに渡す引数を区別するため、--(ダブルハイフン)で必ず区切ってください。追加が成功すると Added ... と表示されます。一覧は claude mcp list、削除は claude mcp remove <name> で管理します。
notion ✔ Connected
github ! Needs authentication
スコープ(local/project/user)を使い分ける
MCPサーバーは読み込む範囲とチーム共有の有無で3つに分けられます。-s(--scope)で指定し、省略時は local です。
| スコープ | 読み込まれる範囲 | チーム共有 | 保存先 |
|---|---|---|---|
| local(既定) | 現プロジェクトのみ | しない | ~/.claude.json |
| project | 現プロジェクトのみ | する | .mcp.json(プロジェクト直下) |
| user | 全プロジェクト | しない | ~/.claude.json |
個人用は local のままで問題ありません。チームに配布したい場合は project スコープを使うと .mcp.json が自動生成され、Gitにコミットすれば共有できます。設定ファイルの扱いは「settings.json解説」で解説しています。
claude mcp add --transport http shared-server --scope project https://example.com/mcp
.mcp.json 由来のprojectスコープサーバーは、対話セッションで承認するまで接続されません。自分専用のツールは --scope user が向いています。同名サーバーが複数スコープにある場合はlocal > project > userの順で優先されます。
/mcpコマンドで状態確認・OAuth認証を行う
サーバー追加後は、セッション内で次のコマンドを実行して接続状況を確認します。
/mcp
各サーバーの接続ツール数や認証要否がわかります。OAuth 2.0が必要なサーバー(Sentryなど)は未認証だと「認証が必要」と表示され、/mcp からブラウザでサインインすると connected に変わります。コマンドラインだけで認証したい場合は claude mcp login sentry、解除は claude mcp logout sentry です。
実用例:GitHubとfilesystemを使う
GitHub連携でコードレビューを効率化する。個人アクセストークンをヘッダー認証で渡して接続します。
claude mcp add --transport http github https://api.githubcopilot.com/mcp/ \
--header "Authorization: Bearer YOUR_GITHUB_PAT"
PR #456をレビューして改善点を提案して
filesystemサーバーで特定ディレクトリだけにアクセスさせる。@modelcontextprotocol/server-filesystem のようなstdioサーバーで、指定ディレクトリ配下だけをClaudeに読み書きさせられます。
claude mcp add --transport stdio docs-fs -- npx -y @modelcontextprotocol/server-filesystem \
C:\Users\you\Documents\project-docs
Playwrightなどのブラウザ操作系サーバーも同様にstdioで追加でき、フォーム入力やUI確認を自然文で指示できます。定番サーバーをまとめて配布したい場合は「プラグイン導入ガイド」も参考にしてください。
セキュリティ上の注意点
- 信頼できるサーバーだけを追加する: サーバーはファイルや外部APIへのアクセス権を持ちます。外部コンテンツを取得するサーバーはプロンプトインジェクションのリスクに注意してください。
- project スコープは中身を確認してから承認する:
.mcp.jsonにあるからと安易に承認しないようにします。 - 認証情報は直書きしない: APIキーは環境変数展開(
${VAR})やOAuth認証を優先し、不要なサーバーはclaude mcp removeで片付けます。
つまずきポイント/よくあるエラー
MCP server already exists in local config: 同名・同スコープのサーバーが既に登録されています。claude mcp removeで削除するか別名で登録してください。/mcpでNeeds authenticationのまま進まない: OAuth未認証です。/mcpを再実行するかclaude mcp login <name>を試してください。- project スコープで追加したのに他メンバーの環境で使えない:
.mcp.jsonがコミットされているか、承認ダイアログを通過したか確認してください。
よくある質問
MCPサーバーはいくつまで追加できますか?
明確な上限はありませんが、増やすほど起動待ちが増えます。実際に使うサーバーだけを有効にしておくのがおすすめです。
stdioとHTTP、どちらを選べばよいですか?
クラウドサービスへの接続はHTTPが推奨方式です。ローカルのファイルシステムや直接システムアクセスが必要なツールにはstdioを使います。SSEは廃止予定のためHTTPを優先してください。
追加したMCPサーバーが /mcp に表示されません
認証方式によっては読み込まれません。/status で認証方式を確認し、claude mcp list で登録の有無も確認してください。
まとめ
Claude CodeのMCP連携は、claude mcp add でHTTP/SSE/stdioいずれかの方式でサーバーを登録し、local/project/userのスコープを使い分け、/mcp で接続状態とOAuth認証を管理する流れで使いこなせます。GitHubやfilesystemなど定番サーバーから試すと効果を実感しやすいはずです。信頼できるサーバーのみを追加し、projectスコープは中身を確認してから承認しましょう。設定全体は「Claude Code設定完全ガイド」と「settings.json解説」、配布は「プラグイン導入ガイド」も参考にしてください。