この記事で分かること
- 初回ターンのMCP接続待ちと、サーバー接続タイムアウトを区別できる
- 1回だけ・シェル全体・CIジョブ単位で待ち時間を指定できる
- 変更前後を同じ条件で測り、必要なMCPツールが使えるか確認できる
- type: sdk の読み飛ばしと通常MCP設定を混同しない
MCPの初回接続待ちを調整できる場面
Claude Code v2.1.274で、非対話セッションの初回ターンに接続中のMCPサーバーを待つ時間を調整する環境変数 CLAUDE_CODE_MCP_STARTUP_WAIT_MS が追加されました。これはMCPサーバーの接続処理そのものを中断したり、すべてのタイムアウトを置き換えたりする設定ではありません。
この設定で変わる範囲
- 非対話セッションの初回ターンで接続中のMCPサーバーを待つ時間を指定する
- 値はミリ秒。0は初回の待ちを省略する
- permission-prompt-tool用サーバーのMCP_TIMEOUT待ちは、この値とは別に残る
起動にかかる時間は、端末、ネットワーク、Claude Code本体、認証、接続先の応答などで変わります。公式リリースノートと現在の環境変数リファレンスには、すべての環境で同じ秒数が短縮されるというベンチマークは示されていません。まず同じ条件で測り、短縮幅は自分の実行結果として記録してください。
対象は、Claude Codeを `-p` などの非対話モードで呼び出し、最初の問い合わせを送る時点でMCPサーバーがまだ接続中になる運用です。
