◉CLAUDE LABEN
●2.1.301 — vim の % モーション、VS Code パネルでの LaTeX 数式表示、使用量上限待ちのリトライ監視の上限が入りました(10/15)●2.1.299 — 200K トークン超で約54分放置した会話はアイドル圧縮。MCP の許可ルールは名指ししたサーバーだけに一致します●SONNET 4.5 — Claude API での提供終了は 11/30、残り45日。移行先は Sonnet 5.5●WINDOWS — 日本語の環境でだけフックが黙って壊れる報告があり、文字コードの確認が呼びかけられています●FAST MODE — Opus 5.5 の Fast mode がリサーチプレビューを終え、ベータヘッダーが不要になりました(10/15)●NEW — Cowork に渡したフォルダの先頭に、十行の約束ファイルを置いてみました●2.1.301 — vim の % モーション、VS Code パネルでの LaTeX 数式表示、使用量上限待ちのリトライ監視の上限が入りました(10/15)●2.1.299 — 200K トークン超で約54分放置した会話はアイドル圧縮。MCP の許可ルールは名指ししたサーバーだけに一致します●SONNET 4.5 — Claude API での提供終了は 11/30、残り45日。移行先は Sonnet 5.5●WINDOWS — 日本語の環境でだけフックが黙って壊れる報告があり、文字コードの確認が呼びかけられています●FAST MODE — Opus 5.5 の Fast mode がリサーチプレビューを終え、ベータヘッダーが不要になりました(10/15)●NEW — Cowork に渡したフォルダの先頭に、十行の約束ファイルを置いてみました
記事一覧/Claude Code
⟐ Claude Code/2026-05-05初級

Claude Code でMCPサーバーが突然動かなくなったとき:5ステップ診断ガイド

昨日まで動いていたMCPサーバーが突然「接続できない」と表示される——そんなときの5ステップ診断ガイドです。/mcpコマンドでの状態確認、stderrログの読み方、設定ファイルの構文チェック、認証トークンと環境変数の確認、再起動まで、すぐ使える対処コマンドとともに解説します。

Claude Code265MCP54トラブルシューティング51診断エラー修正202615

昨日まで問題なく動いていたMCPサーバーが、今朝起動したら突然「接続できない」「ツールが見つからない」と表示される――こういった状況は、Claude Code を日常的に使っているとかならず一度は経験します。私自身、複数のMCPサーバーを並行運用していたとき、あるアップデートをきっかけに全部まとめて動かなくなり、丸半日を診断に費やしたことがあります。

問題は「どこから調べればいいかわからない」という点です。MCPサーバーの不具合には、設定ファイルのJSON構文エラーから、認証トークンの期限切れ、Claude Code 自体のバージョン変更まで、原因がさまざまな層に渡ります。その原因を効率的に絞り込むための5ステップ診断を順番にご紹介します。

ステップ1:まず /mcp コマンドでサーバーの状態を確認する

Claude Code のターミナルで /mcp と入力すると、現在設定されているMCPサーバーの接続状態が一覧で表示されます。

/mcp

表示される状態は主に3種類です:

  • connected:正常に接続されています
  • connecting:接続を試みている途中です(しばらく待って再確認)
  • failed:接続に失敗しています(これが問題の対象)

failed と表示されているサーバーが特定できたら、次のステップに進みます。複数のサーバーがすべて failed になっている場合は、ステップ5(Claude Code 再起動)を先に試すのが早道です。

ステップ2:stderrログで具体的なエラーメッセージを読む

MCPサーバーが failed になっているとき、最も手がかりになるのが stderr(標準エラー出力) のログです。Claude Code はMCPサーバーのプロセスを起動したとき、そのstderrをキャプチャして内部ログに記録しています。

Claude Code の stderr ログ確認機能について詳しくはこちら

ログを確認する方法は以下の通りです:

# macOS / Linux の場合
cat ~/.claude/logs/mcp-*.log 2>/dev/null | tail -100
 
# または Claude Code のデバッグモードで起動
claude --debug

デバッグモードで起動すると、MCPサーバーの起動・接続・エラーメッセージがリアルタイムで流れてきます。以下のようなキーワードが出ていれば、それが原因です:

  • ENOENT:実行ファイルが見つからない(パスの問題)
  • ECONNREFUSED:ポートに接続できない(サーバーが起動していない)
  • 401 Unauthorized:認証トークンが無効
  • SyntaxError:設定ファイルのJSON構文エラー
  • MODULE_NOT_FOUND:Node.jsモジュールが見つからない(npm install 未実行)

ステップ3:設定ファイルの構文エラーをチェックする

MCPサーバーの設定は ~/.claude/claude_desktop_config.json(Claudeアプリ)または ~/.claude.json(Claude Code CLI)に記述されています。JSON は1つのカンマや括弧のミスで全体が壊れるため、編集後に確認が必要です。

# JSON構文チェック(jq コマンドを使用)
cat ~/.claude.json | jq . > /dev/null && echo "✅ JSON構文OK" || echo "❌ 構文エラーあり"
 
# Claudeアプリの設定ファイルをチェック
cat ~/.claude/claude_desktop_config.json | jq . > /dev/null && echo "✅ OK" || echo "❌ エラー"

構文エラーがある場合、jq は「どの行の何文字目か」を教えてくれます。エラーが出た行の前後を確認して、余分なカンマや引用符の欠落を直してください。

よくある構文ミスのパターン:

// ❌ 最後の要素にカンマが残っている(末尾カンマ)
{
  "mcpServers": {
    "my-server": {
      "command": "node",
      "args": ["server.js"],  // ← ここのカンマが不要
    }
  }
}
 
// ✅ 正しい形式
{
  "mcpServers": {
    "my-server": {
      "command": "node",
      "args": ["server.js"]
    }
  }
}

ステップ4:認証・環境変数の問題を確認する

APIキーやOAuthトークンを使うMCPサーバー(GitHubのMCPサーバーなど)は、トークンの期限切れや環境変数の取り込みに失敗するケースがあります。

# 環境変数が正しく設定されているか確認
echo $GITHUB_TOKEN
echo $ANTHROPIC_API_KEY
 
# シェル設定ファイルに記述されているか確認
grep -n "GITHUB_TOKEN\|ANTHROPIC_API_KEY" ~/.zshrc ~/.bashrc 2>/dev/null

環境変数が空の場合、MCPサーバーは起動しても認証エラーで機能しません。また、Claude Code は起動時にシェル設定を読み込まない場合があるため、設定ファイルに env フィールドを使って明示的に渡す方法が安定しています:

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxxxxxxxxxx"
      }
    }
  }
}

ただし、設定ファイルにトークンを直接書くのはセキュリティリスクがあります。本番環境では Claude Code の環境変数管理 の記事を参考に、適切な管理方法を採用してください。

ステップ5:Claude Code とMCPサーバーを再起動する

「設定は正しいはずなのに動かない」というとき、単純な再起動で解決することが意外と多いです。MCPサーバーの接続はセッションに紐づいているため、長時間起動したままにしているとゾンビプロセスが溜まり、新しい接続を受け付けられなくなることがあります。

# Claude Code を完全に終了して再起動
# 1. Claude Code のターミナルで Ctrl+C(または q でセッション終了)
# 2. プロセスが残っていないか確認
ps aux | grep claude | grep -v grep
 
# 3. 残っていれば強制終了
pkill -f "claude" 2>/dev/null
 
# 4. 再起動
claude

再起動後、/mcp コマンドで接続状態を再確認してください。

よくある原因とすぐ使える対処コマンド

診断をより速くするために、よくある原因と対処を整理しました。

Node.jsモジュールが見つからない(MODULE_NOT_FOUND)

MCPサーバーのディレクトリで npm install を実行し忘れている場合です。

cd /path/to/your/mcp-server
npm install

npxコマンドのキャッシュが古い

@modelcontextprotocol/server-* 系のパッケージをnpxで使っている場合、キャッシュが古いバージョンを参照していることがあります。

# npxキャッシュをクリア
npx clear-npx-cache 2>/dev/null || npm cache clean --force

ポートが他のプロセスに占有されている

HTTPベースのMCPサーバーを使っている場合、ポートが競合していることがあります。

# ポート3000が使用中か確認
lsof -i :3000
# 使用中のプロセスを終了
kill $(lsof -ti :3000)

診断できない場合の最終手段

上記の5ステップを試しても解決しない場合は、MCP設定を一時的に空にしてから1つずつ追加することをおすすめします。どのサーバーが競合しているかを切り分けるためです。

詳細なMCP接続の高度なトラブルシューティングは、Claude Code MCP 上級トラブルシューティングの記事が参考になります。

MCPサーバーの不具合は一見複雑に見えますが、ほとんどのケースは「設定ファイルの構文エラー」「環境変数の未設定」「プロセスの競合」のどれかです。まずはstderrログのエラーメッセージを確認することから始めてください。それだけで、原因の80%は特定できます。

シェア

お読みいただきありがとうございます

Claude Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • ✦コピー&ペーストで使える実装コード付き
  • ✦毎日新しい上級ガイドを追加
  • ✦¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

もしこの記事がお役に立ちましたら、チップ(¥150)で応援いただけると大変励みになります。広告なしでの運営を続けるため、皆さまのご支援が大きな力になっています。

関連記事

⟐ Claude Code2026-09-04
~/.claude.json の巻き戻しは v2.1.259 で直りました。消えた設定は自分で戻します
同時に走らせたセッションが ~/.claude.json を互いに巻き戻す不具合が v2.1.259 で修正されました。消えた信頼設定と MCP を洗い出して戻すまでを、キー集合の差分を取る小さなスクリプトとあわせて書き残します。
⟐ Claude Code2026-10-13
「cd して git add して commit」の承認が毎回出る — 設定の抜けではなく、仕様だと分かるまでにたどった道
cd /path && git add && git commit のような複合コマンドで、許可ルールを入れても承認が繰り返し出る。公式の権限ドキュメントと GitHub の報告を突き合わせると、cd と git の組み合わせは設計上プロンプトが出ると分かりました。原因の切り分け順と、手数を減らす4つの直し方を並べます。
⟐ Claude Code2026-10-12
SPM に移したら、起動した瞬間にアプリが落ちるようになりました — dyld の一行を Claude Code と読み解いた記録
CocoaPods から Swift Package Manager へ移した直後、ビルドは通るのに起動した瞬間に落ちました。dyld の一行から原因を切り分け、直し方と確認コマンドまでをまとめます。