Перейти к содержанию

Установка

Машинный перевод

Эта страница переведена с английской документации автоматически, и основной версией остаётся английская страница. Если что-то читается неправильно, на странице Переводы объясняется, как об этом сообщить.

Python SDK опубликован на PyPI как mcp. Для работы нужен Python 3.10+.

Эта документация описывает v2 — текущую стабильную линейку выпусков:

uv add "mcp[cli]"
pip install "mcp[cli]"

Переходите с v1?

v2 — мажорная версия с несовместимыми изменениями; все они описаны в руководстве по миграции. Если ваш пакет зависит от mcp и ещё не готов к переходу, сохраните верхнюю границу <2 (например, mcp>=1.28,<2), чтобы при разрешении зависимостей без фиксированных версий оставаться на линейке 1.x.

Что устанавливается

Чтобы пользоваться SDK, всё это знать не обязательно, но если интересно, зачем нужна каждая зависимость:

  • mcp-types: все типы протокола (запросы, результаты, блоки содержимого) в виде отдельного пакета, версии которого выходят синхронно с SDK. Код, зависящий от mcp, импортирует его через псевдоним mcp.types (каждый from mcp.types import ... в этой документации); импортируйте mcp_types напрямую только в проекте, который устанавливает mcp-types без SDK.
  • anyio: асинхронная среда выполнения. Весь SDK написан поверх anyio, поэтому работает как на asyncio, так и на trio.
  • pydantic: основа всех моделей mcp.types, а также вся генерация схем и валидация.
  • httpx2: HTTP-клиент, на котором построены клиентские транспорты Streamable HTTP и SSE, со встроенной поддержкой server-sent events.
  • starlette, uvicorn, sse-starlette и python-multipart: серверные HTTP-транспорты.
  • jsonschema: проверяет структурированный вывод инструмента на соответствие объявленной выходной схеме.
  • pyjwt[crypto]: работа с OAuth-токенами для авторизации.
  • opentelemetry-api: только лёгкий API, поэтому middleware трассировки в SDK ничего не стоит, пока вы сами не установите SDK и экспортёр OpenTelemetry.
  • typing-extensions и typing-inspection: современные возможности типизации на Python 3.10.
  • pywin32: только для Windows, используется для управления подпроцессами stdio.

Дополнительные компоненты

  • mcp[cli] добавляет typer и python-dotenv для утилиты командной строки mcp (mcp dev, mcp run, mcp install). Во время разработки она пригодится; в развёрнутом сервере может и не понадобиться.
  • mcp[rich] добавляет rich для более красивых логов сервера.