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

Собственные расширения

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

Расширение полезно, когда общий протокол не описывает нужную возможность. Но я сначала проверяю официальные механизмы: собственное поле без версии и negotiation быстро становится источником несовместимости.

Предварительно: L05

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

Определите namespace, версию, capability и поведение при отсутствии поддержки. Документируйте wire schema, ограничения ресурсов и безопасность. Незнакомое расширение не должно превращать стандартный вызов в неожиданное выполнение. Отделяйте эксперимент от стабильного контракта и тестируйте клиента, который расширение не знает.

Возможности вне core

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

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

{
  "namespace": "com.example.task-review",
  "version": "1.0",
  "capability": {
    "supported": true
  },
  "fallback": "read-only task summary without custom UI"
}

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

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

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

Если расширение обязательно для операции, возвращайте понятную несовместимость. Если опционально — оставьте рабочий базовый сценарий. Не объявляйте «соответствие MCP» доказательством поддержки всех частных расширений.

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

Собрать декларацию с namespace, настройками и явной поддержкой обеих сторон. Неизвестное расширение не становится обязательным core.

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

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

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

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

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

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

Что нужно собственному расширению?

Что делать без опционального расширения?

Равна ли поддержка core поддержке всех extensions?