MCP servers built with the SDK can now hand Claude Code a pre-captured manifest instead of doing a live handshake
What
The initialize control request now accepts sdkMcpServerManifests: a pre-captured "host manifest" (an initializeResult plus an optional toolsListResult) for SDK-backed MCP servers. When present, Claude Code validates it against the required MCP protocol version and replays it instead of performing the usual live control-channel handshake for that server.
If a manifest is malformed, uses a mismatched protocol version, or contains paginated tool results it can't replay, Claude Code logs and reports this via telemetry (mcp_sdk_manifest_invalid_initialize, _invalid_tools_list, _paginated_tools_list, _replay_failed) and falls back to the normal handshake instead of applying the bad manifest.
Why
Replaying a known-good manifest avoids the cost and round-trip of a live handshake for SDK MCP servers, while the validation and fallback keep things working correctly if the supplied manifest is bad or incomplete.