{"version":"2.1.219","anchor":"mcp-servers-skipped-by-mcp-config-are-now-reported","canonical_anchor":"mcp-servers-skipped-by-mcp-config-are-now-reported","heading":"MCP servers skipped by --mcp-config are now reported","tier":"notice","area":"MCP","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.219\/e\/mcp-servers-skipped-by-mcp-config-are-now-reported","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.219","markdown":"### MCP servers skipped by --mcp-config are now reported\n\nMCP servers rejected from --mcp-config are now listed on stderr and in the init message instead of vanishing.\n\n**What**\n\nServers passed via `--mcp-config` that fail validation are no longer silently absent; they are collected, surfaced on the SDK init message, and printed to stderr on a TTY.\n\n**Details**\n\n- Validation warnings carrying `mcpErrorMetadata.skipReason` and a server name are collected, and servers that ended up unregistered are recorded\n- A new optional `mcp_server_errors` array on the system\/init payload lists each skipped entry with name, a stable `type` category (unknown_type, url_missing_type, invalid_config, reserved_name) and a message, filtered to servers with no live client\n- On a TTY the same list is printed to stderr as a control-character-scrubbed warning\n- Affected servers no longer appear only as gaps in `mcp_servers[]`, so CI can fail on a non-empty list\n- Also new on init: `fast_mode_disabled_reason`\n- Neither the collection nor the init-message field existed in 2.1.218\n\n**Evidence**\n\n`MCP server config entries from --mcp-config that failed validation and were skipped`, `skipped due to invalid config`\n\n- Area: MCP\n- Names: `--mcp-config`, `mcp_server_errors`\n- Tier: You'll notice\n- Useful: 4\/5\n- Signal: 0\/5"}