環境変数

MCP_CONNECTION_NONBLOCKING

非インタラクティブモード(-p)において、MCP接続の待機を完全にスキップするにはtrueに設定します。

使い方・用途

  • MCPツールを必要としないスクリプトやパイプラインにおいて、起動のオーバーヘッドを削減するために使用します。
  • 低速なMCPサーバーへの接続待機(最大5秒)を回避し、CI/CDなどの自動化ツールで処理を素早く開始できます。
英語原文(公式ドキュメントより)

Set to true in non-interactive mode (-p) to skip the MCP connection wait entirely. Useful for scripted pipelines where MCP tools are not needed. Without this variable, the first query waits up to 5 seconds for --mcp-config server connections. Servers configured with alwaysLoad: true always block startup regardless of this variable, since their tools must be present when the first prompt is built

関連ドキュメント

関連する変更履歴

v2.1.89(1件)

Added
-p モードでMCP接続の待ち合わせを完全にスキップする MCP_CONNECTION_NONBLOCKING=true を追加し、さらに --mcp-config で渡したサーバーへの接続待ちを、最も遅いサーバーに引きずられて無期限にブロックする代わりに5秒で打ち切るようにした。
英語原文を表示
Added MCP_CONNECTION_NONBLOCKING=true for -p mode to skip the MCP connection wait entirely, and bounded --mcp-config server connections at 5s instead of blocking on the slowest server

変更前

claude -p 実行時、起動のたびにすべての設定済みMCPサーバーとの接続が完了するまで待たされ、どれか1つでも遅いサーバーがあると初回ターンまでの待ち時間がそのサーバーに引きずられて長引いていた。

変更後

claude -p 実行時、MCP_CONNECTION_NONBLOCKING=true を設定すれば起動時のMCP接続待ちを丸ごとスキップでき、--mcp-config で渡したサーバーへの接続待ちは最も遅いサーバーに引きずられる代わりに5秒で打ち切られるようになる。

ユーザーへの恩恵

遅い・応答しないMCPサーバーがあっても起動時間の上限をユーザーが制御でき、headless実行が速く確定的に終わるようになる。

関連ドキュメント