Перейти к содержимому
Выберите тему

Расширения протокола

Расширения MCP в редакции 2026-07-28 - что это, как называются, как клиент и сервер о них договариваются и какие официальные расширения существуют

описана редакция 2026-07-28, сверено с документацией 4 октября 2026

Источники - обзор расширений в официальной документации и раздел Extension Negotiation на странице Versioning and Compatibility.

Имя состоит из приставки владельца и названия: приставка/название.

Чьё расширение Приставка Пример
официальное io.modelcontextprotocol io.modelcontextprotocol/tasks
стороннее перевёрнутое доменное имя владельца com.example/my-extension

Правила те же, что у ключей _meta, но приставка обязательна.

Клиент перечисляет расширения в возможностях, которые прикладывает к каждому запросу. Сервер перечисляет свои в ответе на server/discover.

Возможности с расширением
{
"capabilities": {
"tools": {},
"extensions": {
"io.modelcontextprotocol/tasks": {}
}
}
}

Значение - объект настроек, формат которого задаёт само расширение. Пустой объект означает поддержку без настроек.

Если расширение поддерживает только одна сторона, она обязана либо работать по основному протоколу, либо отклонить запрос с понятной ошибкой. Расширению следует описать, как оно ведёт себя в таком случае.

Официальные расширения ведутся в организации Model Context Protocol на GitHub, в репозиториях с приставкой ext-.

Расширение Что добавляет
Tasks (io.modelcontextprotocol/tasks) долгие операции: опрос состояния, ввод по ходу выполнения, устойчивые идентификаторы задач
MCP Apps (io.modelcontextprotocol/ui) интерактивные элементы прямо в разговоре: графики, формы, проигрыватели
OAuth Client Credentials доступ без пользователя: получение токена по учётным данным клиента
Enterprise-Managed Authorization централизованное управление доступом в компании
Skills over MCP поиск и чтение инструкций для агентов через ресурсы MCP

Tasks до редакции 2026-07-28 были экспериментальной частью основного протокола. В 2026-07-28 они вынесены в расширение и переработаны: это записано в списке изменений со ссылкой на SEP-2663.

Какие клиенты поддерживают какие расширения, официальная документация ведёт в отдельной таблице. Здесь эти сведения не повторяются: они меняются с каждым выпуском клиента.

Рабочие группы могут опробовать идею до подачи формального предложения. Такие репозитории получают приставку experimental-ext- и обязаны явно называть себя экспериментальными. Чтобы стать официальным, расширение проходит обычный порядок рассмотрения предложений (SEP).

  • Расширения по умолчанию выключены. Их включает разработчик.
  • SDK не обязан поддерживать расширения. Что именно поддержано, нужно смотреть в документации SDK.
  • Расширения развиваются отдельно от основного протокола. При несовместимом изменении расширение получает новое имя.
  • Свои ключи в _meta официальные расширения заводят под приставкой io.modelcontextprotocol/, сторонние - под своей.