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

Prompts и доверие к контексту

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

Мне нравятся prompts как удобные заготовки рабочих сценариев: например, разобрать задачу перед реализацией. Пользователь выбирает шаблон и аргументы, сервер возвращает сообщения. Это гораздо понятнее скрытого добавления инструкций в любое чтение документа.

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

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

prompts/list даёт каталог, prompts/get — подготовленные сообщения. Аргументы шаблона проверяйте до подстановки. Host решает, как показать и использовать результат. Даже хорошо названный prompt остаётся внешним содержимым: его происхождение должно быть видно, а вложенный resource не становится системной политикой.

Контекст и действие

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

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

{
  "jsonrpc": "2.0",
  "id": "prompt-1",
  "method": "prompts/get",
  "params": {
    "name": "review-task",
    "arguments": {
      "taskId": "task-101"
    },
    "_meta": {
      "io.modelcontextprotocol/protocolVersion": "2026-07-28",
      "io.modelcontextprotocol/clientCapabilities": {},
      "io.modelcontextprotocol/clientInfo": {
        "name": "course-client",
        "version": "1.0.0"
      }
    }
  }
}

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

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

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

Если документ просит отправить секрет в другой сервис, я рассматриваю это как недоверенные данные. Полезный интерфейс показывает источник и даёт человеку возможность отказаться. Автоматическое применение всех возвращённых инструкций ломает границу доверия.

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

Подставить аргументы prompt и отделить данные от инструкций host. Вредоносный текст в ресурсе не превращается в разрешение.

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

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

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

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

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

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

Зачем prompts/get?

Кто решает, как использовать prompt?

Что делать с просьбой ресурса раскрыть секрет?