{"name":"MCP_SERVER_CONNECTION_BATCH_SIZE","slug":"mcp-server-connection-batch-size","family":"env","title":"Environment variables","noun":"environment variable","description":"MCP servers now connect three at a time; set MCP_SERVER_CONNECTION_BATCH_SIZE to change it.","description_source":"entry","described_by":{"version":"2.1.248","anchor":"mcp-servers-connect-three-at-a-time"},"presence":{"first_seen":"2.1.138","removed_in":null,"in_current_build":true,"newest_mined":"2.1.308","builds":149,"mined_builds":149,"first_cited":{"version":"2.1.248","released_at":"2026-08-27 20:35:36","spans":1}},"aliases":[],"entries":[{"version":"2.1.248","anchor":"mcp-servers-connect-three-at-a-time","heading":"MCP servers connect three at a time","line":"MCP servers now connect three at a time; set MCP_SERVER_CONNECTION_BATCH_SIZE to change it.","released_at":"2026-08-27 20:35:36","reason":"named in this entry, found in this entry's text"},{"version":"2.1.248","anchor":"mcp-timeout-and-two-new-connection-batch-size-settings","heading":"MCP timeout and two new connection batch-size settings","line":"Two new env vars set how many MCP servers connect at once, local and remote.","released_at":"2026-08-27 20:35:36","reason":"named in this entry, found in this entry's text"},{"version":"1.0.53","anchor":"new-features","heading":"New Features","line":null,"released_at":"2025-07-15 22:12:02","reason":"found in this entry's text"},{"version":"1.0.53","anchor":"configuration","heading":"Configuration","line":null,"released_at":"2025-07-15 22:12:02","reason":"found in this entry's text"}],"entries_total":4,"docs":[],"docs_total":0,"gates":[],"related":[{"name":"MCP_CLIENT_SECRET","slug":"mcp-client-secret","description":"OAuth client secret for an MCP server, used instead of prompting. When the client secret is requested and `MCP_CLIENT_SECRET` is non-empty, its value is used; otherwise Claude Code prompts `Enter OAuth client secret: ` on stderr, and with no TTY it fails with `No TTY available to prompt for client secret. Set MCP_CLIENT_SECRET env var instead.`"},{"name":"MCP_CONNECT_TIMEOUT_MS","slug":"mcp-connect-timeout-ms","description":"Very large MCP_TIMEOUT values are capped instead of overflowing and timing out instantly."},{"name":"MCP_CONNECTION_NONBLOCKING","slug":"mcp-connection-nonblocking","description":"Five more environment variables, including stream and byte watchdogs, can be set in settings.json."},{"name":"MCP_DISCOVERY_CACHE","slug":"mcp-discovery-cache","description":"Startup no longer dials cached HTTP or SSE MCP servers; they restore from cache and connect on first use."},{"name":"MCP_DISCOVERY_CACHE_MAX_STALE_S","slug":"mcp-discovery-cache-max-stale-s","description":"Cached MCP server discovery is dropped after repeated connection failures instead of only on age."},{"name":"MCP_DISCOVERY_CACHE_STRIKES","slug":"mcp-discovery-cache-strikes","description":"Cached MCP server discovery is dropped after repeated connection failures instead of only on age."},{"name":"MCP_DISCOVERY_CACHE_TTL_S","slug":"mcp-discovery-cache-ttl-s","description":"Cached MCP server discovery is dropped after repeated connection failures instead of only on age."},{"name":"MCP_OAUTH_CALLBACK_PORT","slug":"mcp-oauth-callback-port","description":"About 220 environment variables now parse and validate in one place, including bounds checks."},{"name":"MCP_OAUTH_CLIENT_METADATA_URL","slug":"mcp-oauth-client-metadata-url","description":"MCP OAuth stops sending a client id that only works for loopback, and repairs saved entries."},{"name":"MCP_PROTOCOL_NEGOTIATION","slug":"mcp-protocol-negotiation","description":"A newer MCP protocol handshake exists per transport but every gate falls back to legacy here."}],"url":"https:\/\/changelogs.core-directive.com\/reference\/env\/mcp-server-connection-batch-size","family_url":"https:\/\/changelogs.core-directive.com\/reference\/env.json"}