Claude Code に MCP サーバーを追加する

Claude Code は、デフォルトでもファイル編集・Bash 実行・Web 検索など、ひととおりの作業をこなせます。ですが、ふだん自分が使っている 外部のサービス(GitHub、Sentry、自前のデータベース、Google Drive など)の状態を見たり操作したりするには、もう一歩仕掛けが要ります。

その仕掛けが、MCP(Model Context Protocol) です。Anthropic が定めた共通プロトコルで、Claude Code から「外の道具」へつなぐ標準的な口になっています。サーバーを 1 つ足せば、それが提供するツールやデータが、Claude Code から呼べるようになる ── そんなイメージです。

この記事では、MCP サーバーを Claude Code に追加する具体的な手順、スコープの違い、挫折ポイントまでを、個人開発者向けに整理します。対象は Claude Code v2.1.150 時点。Claude Code の入口となる組み込みスキル・スラッシュコマンド・hooks・サブエージェントは別記事(組み込みスキル 10 個スラッシュコマンド 30 個hooks でできることサブエージェントの使い方)にまとめています。

MCP とは何か、何を解いてくれるか

MCP は、AI クライアント(ここでは Claude Code)と、外部のデータソースや道具の間に立つ、標準化された通信仕様 です。MCP に対応した「サーバー」を起動しておくと、Claude Code はそのサーバーが提供する次の 3 種類を取り回せます。

  • ツール(Tools) … 「GitHub の Issue を取ってくる」「Sentry のエラーを検索する」のような、Claude が呼び出す関数。
  • リソース(Resources) … サーバーが公開する読み取り可能なデータ。ファイル・DB のテーブル・社内ドキュメントなど。
  • プロンプト(Prompts) … サーバー側に保存された再利用可能なプロンプトのテンプレート。

「外のサービスごとに、Claude に新しい API を覚えさせる」のではなく、「MCP という共通の口に揃える」。これが解いてくれる本質です。仕様が共通なので、誰かが書いた MCP サーバーをそのまま借りてくることもできます。

追加の最小形:claude mcp add

サーバーの足し方は 3 通りありますが、いちばん速いのは CLI です。

# HTTP 型の MCP サーバー(例:Sentry の公式)を追加
claude mcp add --transport http sentry https://mcp.sentry.dev/mcp
# stdio 型(ローカルでサブプロセスを起動)の MCP サーバーを追加
claude mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem /path/to/dir

-- の後ろが、サーバーを起動するための実行コマンドと引数です。これだけで、Claude Code を次に起動したときから、対応するツール群が使えるようになります。

確認は claude mcp list、詳細は claude mcp get <name>、外したいときは claude mcp remove <name>

トランスポート(接続の型)3 つ

--transport で指定できる接続の型は 3 つあります。「どのサーバーをどの型で繋ぐか」は、サーバー側の仕様で決まっています。

いつ使うか
stdio(既定)ローカルでサブプロセスとして起動する MCP サーバー公式の filesystem、自作のローカル MCP
httpHTTP エンドポイントを公開している MCP サーバーSentry、Canva など SaaS 提供の MCP
sseHTTP の古いストリーミング方式(Server-Sent Events)旧式の HTTP MCP 互換用

何も指定しなければ stdio です。公式の @modelcontextprotocol/server-* 系は基本 stdio、SaaS が「自社の MCP エンドポイント」を公開している場合は基本 http、と覚えておけば最初は迷いません。

スコープ(どこに保存するか)3 つ

-s または --scope で、設定の保存先を選べます。

スコープ効く範囲用途
local(既定)このマシンの、このプロジェクトだけ試運転・個人用・シークレットを含む設定
userこのマシンの、すべてのプロジェクト自分専用で全プロジェクト共通の道具(GitHub MCP など)
projectリポジトリ直下の .mcp.json に書くチームで共有したい、プロジェクト共通の MCP

project スコープで追加すると、リポジトリ直下に .mcp.json が作られ、git で共有できます。チームで MCP の構成を揃えたいときに使う型です。一方、API キーのような秘密はここに書かない(後述)。

よく使う最初の MCP サーバー

「最初にどれを足すと良いか」は使い道によりますが、個人開発者でよく挙がるのは次のあたりです。

  • 公式 filesystem … プロジェクト外のディレクトリも安全に読み書きさせたい時。@modelcontextprotocol/server-filesystem
  • GitHub … Issue・PR・コード検索を Claude から直接呼べるようにする。レビューや差分の説明づくりが速くなる。
  • Sentry(HTTP) … エラーログを Claude から検索できる。トレースを貼って原因仮説を出させる流れが組める。
  • データベース MCP(postgres / sqlite など) … スキーマを把握させて、安全に SELECT を試させる。本番接続は基本やらない。
  • Playwright … ブラウザ操作を Claude に任せる。E2E のテストアシスト・スクレイピング系の試作。

これらは大半が、npx -y @modelcontextprotocol/server-<name> のように、ローカルに何もインストールせずに起動できます。試したい MCP をひとつ決めたら、claude mcp add を 1 行打って、Claude Code を再起動してみる ── そこから 5 分で動きます。

.mcp.json(プロジェクトで共有する型)

-s project で追加すると、リポジトリ直下に .mcp.json が作られます。中身は、claude mcp add-json で渡せる JSON とほぼ同じ構造です。

{
  "mcpServers": {
    "github": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_PERSONAL_ACCESS_TOKEN}" }
    }
  }
}
  • typestdio / http / sse
  • commandargs … stdio のときに起動するコマンドと引数。
  • env … 環境変数(秘密はここに直書きせず、${...} でシェル環境から借りる)。

このファイルを git に乗せておけば、別マシンでも同じ MCP 構成で Claude Code を立ち上げられます。hasTrustDialogAccepted などの内部状態は混ぜないこと(後述)。

挫折ポイント

ここで止まりがちな箇所を、先に書いておきます。

  • .mcp.json を読み込むか?」のダイアログ … プロジェクト共有の .mcp.json がある状態で Claude Code を初めて起動すると、「このプロジェクトの MCP サーバーを信頼しますか?」と確認されます。任意のコマンドを起動できる仕組みなので、出所が分かっている時だけ承認します。間違って却下したら claude mcp reset-project-choices で取り直せます。
  • API キーを .mcp.json に直書きしないenv に書く値は環境変数の参照(${VAR})にする。リポジトリにシークレットを落とすと、ローテーションが必要になります(既に落としたら即ローテート)。
  • stdio MCP は Node / Python のバージョンに依存するnpx で動かす MCP は、ローカルの Node 版が古いと起動しません。.nvmrc などでバージョンを固定するか、最初に node --version を確認します。
  • HTTP MCP の認証はサーバー次第--header で API キーを乗せる型、OAuth フローに乗る型(--client-id / --client-secret)、claude.ai が裏で取り回す型(Canva・Google Drive など)と、サーバーごとに違います。「うまく繋がらない」の半分はここです。
  • localuser を混同しないlocal は「このマシン・このプロジェクト」だけ。別プロジェクトで使いたければ -s user で入れ直す必要があります。
  • 道具を増やしすぎない … MCP サーバーを足せば足すほど、Claude が考慮する選択肢と消費するコンテキストが増えます。常用するもの 2〜3 個に絞るほうが、結果として速く動きます。

まとめ

MCP は、Claude Code に「外の道具」を標準的な口で繋ぐための仕組みです。最初の 1 本は、公式 filesystem か、自分が日常で使うサービス(GitHub・Sentry など)の MCP から ── claude mcp add を 1 行打って、再起動して、動くのを見るところから始めるのが、いちばん体感が早い入り口です。

プロジェクトで共有したくなった段階で -s project.mcp.json に切り出す。秘密はリポジトリに書かない。常用は 2〜3 個に絞る。この 3 つを守れば、MCP の追加で大きく事故ることはありません。


MCP サーバーが「外への入口」だとすれば、Claude 本体への指示書である CLAUDE.md には何を書くべきか、ハーネス側の自動化である Claude Code の hooks でできること、別コンテキストで動く Claude Code のサブエージェントの使い方 と合わせて読むと、Claude Code 全体の輪郭がいっそう掴みやすくなります。

#Claude Code#開発ツール#リファレンス