Claude Code に MCP サーバーをつなぐ方法
リモート・ローカルの追加、共有の範囲、認証まで
MCP(Model Context Protocol)を使うと、Claude Code から外部のサービスや社内のツールを呼び出せるようになります。この記事では、公式ドキュメントに沿って、MCP サーバーの追加、チームでの共有、認証、管理のコマンドを説明します。
MCP とは
MCP(Model Context Protocol)は、AI のアプリと外部のツールやデータをつなぐためのオープンな標準です。現在は Linux Foundation 傘下の Agentic AI Foundation が管理しています。Claude Code に MCP サーバーを追加すると、そのサーバーが提供するツール(課題管理の検索、ドキュメントの読み取りなど)を、会話の中で Claude Code が使えるようになります。
MCP サーバーには、ネット越しにつなぐ「リモート」と、自分の PC で動かす「ローカル(stdio)」があります。
リモートの MCP サーバーを追加する
公式ドキュメントで推奨されているのは HTTP での接続です。
claude mcp add --transport http <名前> <URL>
# 例:Notion
claude mcp add --transport http notion https://mcp.notion.com/mcp
API キーなどをヘッダーで渡す場合は --header を使います。
claude mcp add --transport http secure-api https://api.example.com/mcp \
--header "Authorization: Bearer your-token"
SSE での接続(--transport sse)も使えますが、非推奨とされています。HTTP に対応しているサーバーなら HTTP を選びます。
ローカルの MCP サーバーを追加する
自分の PC でコマンドとして動かすサーバーは stdio で追加します。-- の後ろが、そのまま実行されるコマンドです。
claude mcp add [オプション] <名前> -- <コマンド> [引数...]
# 例:環境変数を渡して npx で起動
claude mcp add --env AIRTABLE_API_KEY=YOUR_KEY --transport stdio airtable \
-- npx -y airtable-mcp-server
--env のすぐ後ろにサーバー名を書くと、名前が環境変数として読まれてエラーになります。例のように、--env と名前の間に --transport stdio などのオプションをはさみます。
使える範囲(スコープ)を選ぶ
追加するときに --scope(-s)で、どの範囲で使うかを決めます。指定しなければ local です。
| スコープ | 使える範囲 | 保存先 |
|---|---|---|
local(既定) |
今のプロジェクトだけ。自分専用 | ~/.claude.json |
project |
今のプロジェクト。Git でチームと共有 | プロジェクト直下の .mcp.json |
user |
自分のすべてのプロジェクト | ~/.claude.json |
チーム全員で同じサーバーを使うなら project にして、.mcp.json をリポジトリに含めます。
claude mcp add --transport http shared-server --scope project https://example.com/mcp
.mcp.json に書かれたサーバーは、対話セッションで使う前に承認を求められます。承認の選択をやり直すときは claude mcp reset-project-choices を実行します。
秘密の値をファイルに書かない
.mcp.json では ${VAR} や ${VAR:-既定値} の形で環境変数を参照できます。
{
"mcpServers": {
"api-server": {
"type": "http",
"url": "${API_BASE_URL:-https://api.example.com}/mcp",
"headers": { "Authorization": "Bearer ${API_KEY}" }
}
}
}
こうしておけば、API キーそのものをリポジトリに入れずに済みます。なお ANTHROPIC_API_KEY など一部の認証情報の変数は、リモートの URL やヘッダーの中では空文字に置き換えられます。他人が用意した .mcp.json から認証情報が外に送られるのを防ぐための仕組みです。
認証(OAuth)
ログインが必要なリモートサーバーは、Claude Code の中で次のコマンドを入力し、ブラウザでログインします。
/mcp
トークンは保存され、自動で更新されます。/mcp の画面では、各サーバーが接続済みか、認証が必要か、接続に失敗したかも確認できます。
一覧・確認・削除
claude mcp list # 追加したサーバーの一覧
claude mcp get notion # 1つのサーバーの詳細
claude mcp remove notion # 削除
注意したいこと
- MCP サーバーは、Claude Code にツールを渡す仕組みです。信頼できる提供元のサーバーだけを追加してください。
- 応答が遅いサーバーでは、起動のタイムアウトを
MCP_TIMEOUTで、出力の上限をMAX_MCP_OUTPUT_TOKENSで調整できます。 - 同じ名前のサーバーが複数の場所に書かれている場合は、local、project、user の順に優先されます。
出典
- Connect Claude Code to tools via MCPAnthropic(Claude Code Docs)
- Donating Agent Skills to the Agentic AI FoundationAnthropic
この記事で扱った企業
- Anthropicアンソロピック