El SDK de Python para ModelContextProtocol (MCP) ha publicado su primer candidato a versión 2, v2.0.0rc1. Esta preversión es solo opcional e introduce una limpieza significativa de la API y alineación con la especificación próxima del 28-07-2026.
- El valor predeterminado del caché del cliente ahora es CacheConfig(), con None para desactivarlo.
- Se elimina Context.client_id; usa ctx.request_context.meta o get_access_token().client_id.
- Se eliminan RFC7523OAuthClientProvider y JWTParameters en favor de ClientCredentialsOAuthProvider, PrivateKeyJWTOAuthProvider o IdentityAssertionOAuthProvider.
- Los proveedores de credenciales del cliente ahora toman scope= en lugar de scopes=.
- Se elimina el parámetro timeout de OAuthClientProvider porque no se usaba.
- message_handler recibe solo ServerNotification | Exception; se eliminan el brazo muerto RequestResponder y el módulo mcp.shared.session.
- FileResource.is_binary se reemplaza por un campo encoding.
- Las variables de entorno MCP_* para MCPServer ya no se anuncian, y pydantic-settings se elimina de las dependencias en tiempo de ejecución.
- Los servidores HTTP manejables rechazan cuerpos de solicitud superiores a 4 MiB con HTTP 413.
- La clave _meta de clientInfo es opcional, y serverInfo se mueve dentro de _meta de cada resultado.
- Los servidores stdio ahora deciden la era del protocolo desde la solicitud inicial del cliente, habilitando características de la era 2026 sobre stdio.
- stdio_server() aísla stdin/stdout para prevenir corrupción de impresión en el flujo JSON-RPC.
- Los resultados de herramientas validados contra un esquema de salida son más rápidos debido a validadores de JSON Schema en caché.
Se planea la versión estable v2 para el 28-07-2026 junto con la publicación de la especificación. Se recomienda a los usuarios fijar versiones exactas hasta entonces.