Python SDK для ModelContextProtocol (MCP) выпустила свой первый кандидат в релиз версии 2 — v2.0.0rc1. Этот предварительный выпуск доступен только по желанию и включает значительную очистку API и приведение в соответствие со спецификацией, которая выйдет 2026-07-28.

  • Значением по умолчанию для кэша клиента теперь является CacheConfig(), а None отключает его.
  • Context.client_id удалён; используйте ctx.request_context.meta или get_access_token().client_id.
  • RFC7523OAuthClientProvider и JWTParameters удалены в пользу ClientCredentialsOAuthProvider, PrivateKeyJWTOAuthProvider или IdentityAssertionOAuthProvider.
  • Провайдеры с клиентскими учётными данными теперь принимают параметр scope= вместо scopes=.
  • Параметр timeout у OAuthClientProvider удалён, так как не использовался.
  • message_handler принимает только ServerNotification | Exception; мёртвая ветка RequestResponder и модуль mcp.shared.session устранены.
  • FileResource.is_binary заменено на поле encoding.
  • Переменные окружения MCP_* для MCPServer больше не рекламируются, а pydantic-settings исключён из зависимостей времени выполнения.
  • Streamable HTTP-серверы отклоняют тела запросов размером более 4 MiB с кодом HTTP 413.
  • Ключ _meta в clientInfo является необязательным, а serverInfo перемещён в _meta каждого результата.
  • Серверы stdio теперь определяют эру протокола на основе открывающего запроса клиента, что позволяет использовать функции эпохи 2026 через stdio.
  • stdio_server() изолирует stdin/stdout для предотвращения искажения JSON-RPC потока при выводе print.
  • Результаты инструментов, проверяемые по схеме вывода, работают быстрее благодаря кэшированным валидаторам JSON Schema.

Стабильный релиз v2 запланирован на 2026-07-28 вместе с выпуском спецификации. Пользователям рекомендуется фиксировать точные версии до этого момента.