MCP Docs ревизия 2026-07-28

Начало / Понятия / Ресурсы

Ресурсы (resources)

Данные, которые читает приложение

Перевод и пересказОснова: Понимание серверов MCP; список изменений 2026-07-28Сверено 05.10.2026, ревизия 2026-07-28Открыть .md

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

Как это устроено#

У каждого ресурса есть уникальный URI (например, file:///path/to/document.md) и тип MIME. Ресурсы бывают двух видов.

  • Прямые ресурсы имеют фиксированные URI и указывают на конкретные данные. Пример: calendar://events/2024.
  • Шаблоны ресурсов задают динамические URI с параметрами для гибких запросов. Пример: travel://activities/{city}/{category}; конкретный вариант — travel://activities/barcelona/museums.

Шаблоны содержат метаданные (название, описание, ожидаемый тип MIME), поэтому их можно находить и понимать без документации:

json
{
  "uriTemplate": "weather://forecast/{city}/{date}",
  "name": "weather-forecast",
  "title": "Weather Forecast",
  "description": "Get weather forecast for any city and date",
  "mimeType": "application/json"
}

Методы#

Метод Назначение Что возвращает
resources/list Список прямых ресурсов. Массив описаний ресурсов.
resources/templates/list Список шаблонов ресурсов. Массив определений шаблонов.
resources/read Чтение содержимого ресурса. Данные ресурса с метаданными.
subscriptions/listen Слежение за изменениями. Поток уведомлений об обновлении.

Результаты resources/list, resources/templates/list и resources/read несут обязательные поля ttlMs и cacheScope для кэширования. Заголовок Mcp-Name при чтении ресурса по HTTP содержит URI («Транспорты»).

Подписка на изменения#

Чтобы следить за конкретными ресурсами, клиент отправляет запрос subscriptions/listen и перечисляет URI в фильтре resourceSubscriptions. Когда наблюдаемый ресурс меняется, сервер доставляет notifications/resources/updated в открытом потоке. Подробнее: «Шаблоны обмена».

Автодополнение параметров#

Для динамических ресурсов можно подсказывать допустимые значения параметров. Когда пользователь вводит «Par» в weather://forecast/{city}, система может предложить «Paris» или «Park City». Так пользователю не нужно знать точный формат.

Модель взаимодействия#

Ресурсы управляются приложением, поэтому способы показа свободны:

  • деревья и списки для просмотра в привычном виде папок;
  • поиск и фильтры;
  • автоматическое включение в контекст или умные предложения по эвристикам либо выбору ИИ;
  • ручной или массовый выбор нескольких ресурсов.

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

Ошибка «ресурс не найден»#

В ревизии 2026-07-28 код ошибки «ресурс не найден» изменён с -32002 на -32602 (неверные параметры), чтобы согласовать с JSON-RPC. Клиентам СЛЕДУЕТ по-прежнему принимать -32002 от серверов прежних версий. Подробнее: «Ошибки».