# Что устарело в MCP

> Реестр устаревших функций MCP на редакцию 2026-07-28 - Roots, Sampling, Logging, Dynamic Client Registration, HTTP+SSE, сроки возможного удаления и чем их заменить

Страница: https://mcpdoc.ru/protocol/deprecations/
Указатель сайта: https://mcpdoc.ru/llms.txt

Устаревшая функция остаётся в спецификации и продолжает работать, но назначена к удалению. Новым реализациям её добавлять не следует, существующим следует перейти на замену. На редакцию `2026-07-28` устаревшими числятся шесть функций; удалённых по новым правилам нет.

сверено с реестром спецификации 4 октября 2026

## Три состояния функции

Правила заданы [политикой жизненного цикла](https://modelcontextprotocol.io/community/feature-lifecycle), принятой изменением SEP-2596.

| Состояние | Что значит |
|---|---|
| Active | функция входит в текущую редакцию |
| Deprecated | функция остаётся в спецификации, но назначена к удалению; путь перехода описан |
| Removed | функция убрана из черновика и не войдёт в следующую редакцию |

«Устарела» и «удалена» - разные состояния. Устаревшая функция работает.

## Реестр

Данные из [реестра устаревших функций](https://modelcontextprotocol.io/specification/2026-07-28/deprecated) редакции `2026-07-28`.

| Функция | Устарела с | Чем заменить | Когда может быть удалена |
|---|---|---|---|
| Roots | `2026-07-28` | передавать каталоги и файлы параметрами инструментов, адресами ресурсов или настройкой сервера | в первой редакции, вышедшей 28 июля 2027 или позже |
| Sampling | `2026-07-28` | обращаться к языковой модели напрямую через API её поставщика | в первой редакции, вышедшей 28 июля 2027 или позже |
| Logging | `2026-07-28` | на stdio писать в `stderr`; для наблюдения использовать OpenTelemetry | в первой редакции, вышедшей 28 июля 2027 или позже |
| Dynamic Client Registration | `2026-07-28` | [Client ID Metadata Documents](https://mcpdoc.ru/auth/client-registration/) | в первой редакции, вышедшей 28 июля 2027 или позже |
| значения `includeContext`: `"thisServer"` и `"allServers"` | `2025-11-25` | не указывать поле или указать `"none"` | вместе с Sampling |
| транспорт HTTP+SSE | `2025-03-26` | [Streamable HTTP](https://mcpdoc.ru/protocol/transports/) | через три месяца после того, как SEP-2596 получит статус Final |

Раздел «Removed» реестра пуст.

## Как читать срок

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

Минимальный срок от объявления до возможного удаления - двенадцать месяцев. Сократить его можно только при действующей угрозе безопасности, и даже тогда не меньше чем до девяноста дней.

Для HTTP+SSE в реестре нет календарной даты. Запись гласит: «через три месяца после того, как SEP-2596 получит статус Final». Статус Final проставлен в файле SEP-2596 в репозитории спецификации 3 июня 2026. Отсчёт от этой записи даёт 3 сентября 2026 - это наш расчёт, а не строка из реестра.

На 4 октября 2026 транспорт числится в разделе Deprecated и не удалён.

## Что это значит для SDK

Удаление функции из спецификации не обязывает SDK убирать её из своих выпусков: это определяет политика самого SDK. Для SDK первого уровня политика требует пометить устаревший API средствами языка в ближайшем выпуске и рекомендует выдавать предупреждение при использовании.

## Что убрано без периода устаревания

Часть изменений редакции `2026-07-28` - не устаревание, а замена сразу. Так, рукопожатие `initialize`, сессии, `ping` и прямые запросы от сервера к клиенту в новой редакции отсутствуют. Они перечислены на странице [«Переход на 2026-07-28»](https://mcpdoc.ru/protocol/migration/).

Экспериментальные Tasks не удалены, а перенесены из основного протокола в [расширение](https://mcpdoc.ru/protocol/extensions/).
