CLAUDE_CODE_MCP_STARTUP_WAIT_MS

環境変数

非対話セッションの最初のターンが、まだ接続中の MCP サーバーを待つ時間をミリ秒単位で指定し、既定の初回ターン待機を置き換える。自己ホスト環境では、待機時間の長さのみが変わる。値にかかわらず独自の待機を維持するサーバーがあり、それらは Connection timing に記載されている。0 に設定すると、それ以外のサーバーへの待機をスキップする。Claude Code v2.1.274 以降が必要である。

使い方・用途

  • 非対話セッションの最初のターンで MCP サーバーの起動待ち時間を既定値から変更したい場合
  • MCP サーバーの接続待ちによる初回応答の遅さを回避するため、待ち時間を 0 にしてスキップしたい場合
  • stdio・HTTP・SCE サーバーに対する MCP_TIMEOUT の待ち時間をまとめて同一の上限に置き換えたい場合
英語原文

How long in milliseconds the first turn of a non-interactive session waits for MCP servers that are still connecting, in place of the default first-turn wait. In a self-hosted environment, it changes only how long the wait lasts. Some servers keep a wait of their own regardless of the value; Connection timing lists them. Set to 0 to skip the wait for every other server. Requires Claude Code v2.1.274 or later

関連する変更履歴

v2.1.284(1件)

CLAUDE_CODE_MCP_STARTUP_WAIT_MS が 0 の場合でも、--allowedTools や mcp_tool フックで指定された接続中の MCP サーバーに対し、非対話の最初のターンで最大 2 秒待機するように変更した。
英語原文を表示
Changed the non-interactive first turn to still wait up to 2s for connecting MCP servers named by --allowedTools or an mcp_tool hook, even when CLAUDE_CODE_MCP_STARTUP_WAIT_MS is 0

変更後

--allowedTools や mcp_tool フックで指定した MCP ツールが、CLAUDE_CODE_MCP_STARTUP_WAIT_MS=0 を設定して待機時間を無効にした場合でも確実に初回ターンまでに利用可能になり、ツールが見つからず処理が失敗するのを防げる。

v2.1.274(1件)

最初の非対話ターンが接続中の MCP サーバーを待つ時間を上限で制限する CLAUDE_CODE_MCP_STARTUP_WAIT_MS を追加した(0 は待機しないを意味する)
英語原文を表示
Added CLAUDE_CODE_MCP_STARTUP_WAIT_MS to bound how long the first non-interactive turn waits for connecting MCP servers (0 = don't wait)

変更後

非インタラクティブ実行の最初のターンで、まだ接続中の MCP サーバーを待つ時間をミリ秒単位で自由に調整できるようになる。これにより、起動の遅いサーバーが原因で初回実行が不必要に長く待たされたり、逆にツールが未接続のまま実行が始まってエラーになったりする問題を、環境変数一つで制御できる。