The Model Context Protocol (MCP) Python SDK has released version 2.3.0, introducing new configuration options alongside several behavioral changes and bug fixes.
- Adds a `max_sse_event_size` parameter to `streamable_http_client` and `StreamableHttpParameters`, allowing users to configure the limit for Server-Sent Events (defaulting to 1 MiB).
- Enforces stricter validation for tool annotations, causing registration to fail immediately if an `x-mcp-header` annotation is invalid.
- Stops sending empty `_meta` and `params` fields in requests for connections prior to the 2025-11-25 protocol version, aligning with v1 behavior.
- Omits the `experimental` capability from the `initialize` result when no experimental features are configured.
- Pauses request timeouts during interactive OAuth login flows to prevent premature failures.
These updates improve compatibility with servers that reject empty metadata fields and provide better control over SSE event sizes for large tool results.