COMRAD404 / GLOSSARY

MCP (Model Context Protocol)

Model Context Protocol

MCP (Model Context Protocol) — открытый протокол на базе JSON-RPC 2.0 для связи LLM-приложений с внешними инструментами и данными. Ниже — простое объяснение, схема работы, изменения ревизии 2026-07-28 и практические ограничения.

TL;DR

Открытый протокол на базе JSON-RPC 2.0 для подключения LLM-приложений к внешним инструментам и источникам данных.

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
  1. Host-приложение решает, что модели нужны внешние данные или действие.
  2. MCP client формирует обращение к MCP server по JSON-RPC 2.0.
  3. Server discovery используется, чтобы узнать, какие возможности сервер объявляет.
  4. Каждый запрос передаёт протокольные метаданные в _meta, а HTTP-слой может использовать стандартизованные заголовки.
  5. MCP server возвращает описание доступных возможностей или результат вызова.
  6. 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.

  1. Зафиксируйте целевую ревизию. По состоянию на 2026-08-16 актуальна спецификация от 2026-07-28. Важно не запутаться из-за того, что каноническая страница спецификации всё ещё находится по пути /specification/2024-11-05/index; это особенность структуры сайта, а не признак старой версии протокола.
  2. Проверьте, нет ли зависимости от сессии. Если ваша старая реализация опиралась на initialize/initialized или Mcp-Session-Id, её нужно пересмотреть: в новой ревизии ядро stateless.
  3. Перенесите протокольные метаданные в каждый запрос. Официальное объявление прямо указывает на обязательный перенос protocol/version/capability metadata в _meta.
  4. Реализуйте или проверьте server/discover. Это основной путь для обнаружения возможностей сервера в актуальной ревизии.
  5. Проверьте HTTP-слой. Если вы используете HTTP, сверьтесь со стандартизованными заголовками MCP-Protocol-Version, Mcp-Method и Mcp-Name.
  6. Запланируйте переходный период. Если в стеке ещё используются roots, sampling или logging, учитывайте, что они помечены как deprecated. В Go SDK отмечено, что они продолжают поддерживаться в течение окна депрекации, но это не аргумент строить на них новую архитектуру.
  7. Прогоните сервер через 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 и интерфейсные детали, которые могли измениться после индексации репозиториев.

Источники

Вопросы и ответы

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. Для новых интеграций лучше проектировать сервер и клиент без зависимости от этих возможностей.

Источники

SOURCES

Вопросы и ответы

FAQ
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. Для новых интеграций лучше не строить архитектуру вокруг них.

Читайте также

LINKS