MCP (Model Context Protocol) — это открытый протокол на базе JSON-RPC 2.0 для подключения приложений с LLM к внешним инструментам и источникам данных. По состоянию на 2026-08-16 актуальная официальная ревизия спецификации датирована 2026-07-28: она делает ядро протокола stateless, переносит метаданные протокола в _meta каждого запроса, вводит server/discover и помечает roots, sampling и logging как deprecated.
Если вам нужен короткий вывод: MCP полезен не как «ещё один AI-инструмент», а как общий способ договориться между LLM-приложением и внешним сервером о том, какие данные и действия доступны и как их вызывать. Для новых интеграций практичнее ориентироваться сразу на ревизию 2026-07-28 и проверять совместимость SDK перед внедрением.
Английский термин: Model Context Protocol. Также встречается: MCP.
Простыми словами
Грубо говоря, MCP можно представить как унифицированный «переходник» между приложением с моделью и внешним миром. Вместо того чтобы для каждого файлового хранилища, базы данных или внутреннего сервиса писать свою уникальную интеграцию, приложение и сервер общаются по общему протоколу.
Практический смысл в том, что LLM-приложение получает предсказуемый способ узнать, что умеет внешний сервер, и обратиться к этим возможностям в стандартном формате. Это особенно полезно там, где один и тот же набор инструментов должен работать с разными host-приложениями или разными реализациями серверов.
Как это работает
Спецификация MCP описывает взаимодействие между host, client и server, а сообщения протокола оформляются как JSON-RPC 2.0. В актуальной ревизии 2026-07-28 важное изменение такое: ядро протокола стало stateless, то есть базовая логика больше не опирается на отдельный обмен initialize/initialized и не использует Mcp-Session-Id.
Вместо этого метаданные о протоколе, версии и возможностях должны передаваться в _meta каждого запроса. Для обнаружения возможностей сервера добавлен метод server/discover, а для HTTP-взаимодействия стандартизованы заголовки, включая MCP-Protocol-Version, Mcp-Method и Mcp-Name.
Схема на уровне ролей
Host-приложение с LLM
|
v
MCP client
|
JSON-RPC 2.0
|
v
MCP server
/ |
v v v
инструменты данные внешние системы
Ключевая особенность ревизии 2026-07-28:
каждый запрос несёт нужные протокольные метаданные в _meta
- Host-приложение решает, что модели нужны внешние данные или действие.
- MCP client формирует обращение к MCP server по JSON-RPC 2.0.
- Server discovery используется, чтобы узнать, какие возможности сервер объявляет.
- Каждый запрос передаёт протокольные метаданные в
_meta, а HTTP-слой может использовать стандартизованные заголовки. - MCP server возвращает описание доступных возможностей или результат вызова.
- Host-приложение решает, как использовать полученный ответ в цепочке работы модели.
Официальное объявление к ревизии 2026-07-28 также отмечает кэшируемые результаты списков, усиление авторизации и расширения. Для практики это важно по двум причинам: во-первых, новые серверы и клиенты лучше проектировать сразу под stateless-поведение; во-вторых, миграция со старых реализаций требует явной проверки совместимости.
Где применяется
- Подключение LLM-приложений к внешним данным. Это базовый сценарий самого протокола: приложение с моделью получает единый способ работать с внешними источниками данных.
- Подключение к инструментам и действиям. MCP нужен не только для чтения данных, но и для вызова внешних инструментов через согласованный протокольный слой.
- Разработка собственных клиентов и серверов. Официальный TypeScript SDK ориентирован на Node.js, Bun и Deno; по состоянию на 2026-08-16 стабильной линией для спецификации 2026-07-28 указан v2, а ветка v1.x остаётся на bug fixes и security updates минимум шесть месяцев после релиза v2.
- Go-интеграции и серверные сервисы. Официальный Go SDK указывает, что поддержка спецификации 2026-07-28 есть начиная с v1.7.0+, а deprecated-возможности
roots,samplingиloggingещё поддерживаются в течение окна депрекации. - Тестирование и отладка серверов. Официальный Inspector — это визуальный инструмент для проверки MCP-серверов и диагностики поведения протокола.
Если вам нужен прикладной пользовательский сценарий, посмотрите нашу инструкцию как подключить MCP-сервер к Claude Desktop. Она полезна как практическая точка входа, но архитектурные решения всё равно стоит сверять с официальной спецификацией и SDK.
Практический пример
Ниже — не код, а безопасный пошаговый сценарий для команды, которая переносит интеграцию на актуальную ревизию MCP.
- Зафиксируйте целевую ревизию. По состоянию на 2026-08-16 актуальна спецификация от 2026-07-28. Важно не запутаться из-за того, что каноническая страница спецификации всё ещё находится по пути
/specification/2024-11-05/index; это особенность структуры сайта, а не признак старой версии протокола. - Проверьте, нет ли зависимости от сессии. Если ваша старая реализация опиралась на
initialize/initializedилиMcp-Session-Id, её нужно пересмотреть: в новой ревизии ядро stateless. - Перенесите протокольные метаданные в каждый запрос. Официальное объявление прямо указывает на обязательный перенос protocol/version/capability metadata в
_meta. - Реализуйте или проверьте
server/discover. Это основной путь для обнаружения возможностей сервера в актуальной ревизии. - Проверьте HTTP-слой. Если вы используете HTTP, сверьтесь со стандартизованными заголовками
MCP-Protocol-Version,Mcp-MethodиMcp-Name. - Запланируйте переходный период. Если в стеке ещё используются
roots,samplingилиlogging, учитывайте, что они помечены как deprecated. В Go SDK отмечено, что они продолжают поддерживаться в течение окна депрекации, но это не аргумент строить на них новую архитектуру. - Прогоните сервер через Inspector. Для ручной проверки и отладки официально поддерживается репозиторий Inspector.
Практический вывод: для нового проекта имеет смысл сразу брать stateless-модель спецификации 2026-07-28 и совместимый SDK. Для уже работающей интеграции правильнее сначала пройти миграционный чек-лист и верифицировать поведение сервера в Inspector, чем «обновляться по месту» без тестов.
Чем отличается от…
| Термин | Что это | Для чего нужен | Чего не стоит ожидать |
|---|---|---|---|
| MCP | Открытый протокол | Стандартизовать связь LLM-приложений с внешними инструментами и данными | Это не готовый агент и не SDK |
| MCP server | Серверная реализация протокола | Открывать данные и действия через MCP | Сам по себе не равен всей спецификации |
| MCP SDK | Библиотека реализации | Быстрее писать клиентов и серверы под спецификацию | SDK не заменяет понимание совместимости ревизий |
| Inspector | Инструмент проверки и отладки | Визуально тестировать MCP-серверы | Это не production-host и не часть ядра протокола |
Ещё одна полезная граница: MCP — это не термин того же уровня, что BPE, не параметр генерации вроде temperature и не метод обучения вроде DPO. То есть MCP решает задачу интеграции, а не токенизации, не сэмплирования и не оптимизации модели.
Ограничения и заблуждения
- Заблуждение: «MCP — это продукт». По официальным источникам MCP — это открытый протокол. Продуктами или инструментами вокруг него уже выступают SDK, Inspector и конкретные серверные реализации.
- Заблуждение: «протокол один раз выучил — и всё совместимо навсегда». Нет. Актуальная ревизия 2026-07-28 заметно меняет базовую механику: протокол становится stateless, исчезают
initialize/initializedиMcp-Session-Id, меняется способ передачи метаданных. - Ограничение: версия SDK имеет значение. Для TypeScript официально стабильной линией под 2026-07-28 указана v2. Для Go нужна совместимая версия v1.7.0+.
- Ограничение: deprecated-возможности ещё можно встретить. Наличие поддержки
roots,samplingилиloggingв переходный период не означает, что их стоит закладывать в новый дизайн. - Ограничение: точные релизные теги и package-метаданные надо перепроверять перед установкой. Официальные репозитории могут обновиться быстрее, чем вторичные обзоры.
- Ограничение: в официальных репозиториях нет региональных цен или условий доступа для open-source SDK. Если вы используете hosted-сервис поверх MCP, условия надо проверять на официальной странице конкретного сервиса.
Редакционная оговорка: эта статья описывает MCP только в пределах проверенного source pack по состоянию на 2026-08-16. Мы сознательно не приводим несверенные примеры payload, сигнатуры SDK и интерфейсные детали, которые могли измениться после индексации репозиториев.
Источники
- Model Context Protocol Specification
- The 2026-07-28 Model Context Protocol specification is out
- Changelog
- MCP draft changelog
- GitHub – modelcontextprotocol/modelcontextprotocol
- GitHub – modelcontextprotocol/typescript-sdk
- GitHub – modelcontextprotocol/go-sdk
- GitHub – modelcontextprotocol/inspector
Вопросы и ответы
MCP — это стандарт или конкретный инструмент?
MCP — это открытый протокол. Конкретными инструментами вокруг него выступают, например, официальные SDK и Inspector.
Что главное изменилось в ревизии 2026-07-28?
Ядро протокола стало stateless, исчезли initialize/initialized и Mcp-Session-Id, появился server/discover, а метаданные протокола должны передаваться в _meta каждого запроса.
Нужен ли SDK, чтобы использовать MCP?
Не обязательно как концепция, но на практике SDK упрощает реализацию клиента или сервера и снижает риск ошибок совместимости. Перед внедрением всё равно проверьте, какую ревизию спецификации поддерживает выбранная версия SDK.
Чем проверять MCP-сервер перед запуском?
Для этого официально поддерживается Inspector — визуальный инструмент проверки и отладки MCP-серверов.
Можно ли опираться на старые возможности вроде roots, sampling и logging?
Их ещё можно встретить в переходный период, но в официальной ревизии 2026-07-28 они помечены как deprecated. Для новых интеграций лучше проектировать сервер и клиент без зависимости от этих возможностей.