Бета · редакция 2026.10-beta1 · MCP 2026-07-28

Версии и метаданные запроса

L04 · MCP 2026-07-28 · открытая бета · редакция 2026.10-beta1

Я фиксирую версию протокола так же явно, как версию зависимости. В этом курсе основной профиль — 2026-07-28. Это существенно: советы для 2025-11-25 могут быть корректны для старого клиента и неверны для современного.

Предварительно: L02 · L03

Как я это использую

В современных запросах версия передаётся в params._meta под ключом io.modelcontextprotocol/protocolVersion. Там же живут clientCapabilities и clientInfo. Для HTTP согласуйте заголовок MCP-Protocol-Version с телом. Сервер не должен восстанавливать важные свойства запроса из случайно оставшегося состояния предыдущего соединения.

Кто за что отвечает

Разбираем конкретный контракт

Это учебный fixture: поля с доменом .example и идентификаторы вымышлены. Если показан фрагмент, его нужно поместить в соответствующий envelope выбранного профиля.

{
  "_meta": {
    "io.modelcontextprotocol/protocolVersion": "2026-07-28",
    "io.modelcontextprotocol/clientCapabilities": {},
    "io.modelcontextprotocol/clientInfo": {
      "name": "course-client",
      "version": "1.0.0"
    }
  }
}

Лаборатория · L04

Измените условия, проверьте результат и разберите ошибку. Все адреса и данные учебные.

Что легко сломать

Дата в README пакета не гарантирует поддержку всего профиля. Я проверяю конкретную комбинацию client, server, transport и feature. После перехода версии меняется не только имя поля: handshake, MRTR и подписки имеют другую модель.

Практика и самопроверка

Согласовать _meta и HTTP-заголовок версии; обработать неподдерживаемую версию. Успех: неверное сочетание не проходит.

Я советую сначала предсказать результат, затем изменить один параметр в лаборатории и объяснить разницу. Сохраните небольшой fixture с нормальным и ошибочным случаем для своего проекта. Тренажёр открыт без регистрации; для сохранения ответов на тесты и завершения урока войдите в аккаунт.

В конце страницы — три вопроса. После правильных ответов можно завершить урок; ошибка в следующей тренировке не стирает уже полученное подтверждение этой редакции теста.

На что я опирался

Профиль и ссылки проверены 15 октября 2026. Core, deprecated compatibility и extensions в этом курсе помечены отдельно. Примеры объясняют выбранные сценарии; для реализации сверяйте нормативные MUST/SHOULD и schema соответствующей версии.

Проверка знаний

Читайте свободно. Войдите, чтобы отвечать и сохранять прогресс.

Где версия современного запроса?

Что вернее при обновлении профиля?

Что означает версия npm-пакета?