Типы JSON-сообщений в MCP

Урок 9 из 18 курса «MCP: продвинутые темы»: официальный курс Anthropic Academy (Антропик) на русском языке. Урок входит в платный доступ; первые уроки курса бесплатно.

Кадр из видеоурока

О чём урок

Добро пожаловать в углубленный курс по Протоколу Контекста Модели (Model Context Protocol, MCP) в рамках Anthropic Academy! Если вы работаете с Claude AI и хотите глубже понять, как происходит взаимодействие между вашими приложениями и серверной частью, этот урок станет для вас ключевым. В основе эффективной работы с Claude лежит не только понимание его возможностей как большой языковой модели (LLM), но и знание того, как он обменивается информацией с внешним миром. Именно здесь в игру вступает MCP – стандартизированный протокол, использующий JSON-сообщения для организации всей коммуникации между клиентами и серверами. Понимание различных типов JSON-сообщений MCP критически важно. Это позволяет не только эффективно отлаживать взаимодействие, но и правильно выбирать методы транспорта данных, такие как потоковый HTTP (StreamableHTTP), для построения надежных и масштабируемых систем. Представьте, что Claude – это высокоинтеллектуальный собеседник, а MCP – это язык, на котором вы с ним общаетесь. Этот язык строго структурирован и всегда использует формат JSON (JavaScript Object Notation). Каждое сообщение JSON имеет четко определенную структуру и служит конкретной цели, будь то запрос на выполнение определенной функции, получение списка доступных ресурсов или информирование о важных системных событиях. Например, когда Claude необходимо использовать какой-либо инструмент (tool), предоставленный сервером MCP (например, для поиска информации в интернете или выполнения вычислений), клиентское приложение отправляет специальное сообщение типа Call Tool Request. Сервер получает этот запрос, выполняет соответствующую операцию с инструментом и затем отправляет обратно сообщение Call Tool Result, содержащее результат выполнения. Этот простой цикл "запрос-ответ" лежит в основе многих взаимодействий. Полный и актуальный список всех типов сообщений MCP, их структуры и правил использования содержится в официальном репозитории спецификации MCP на GitHub. Важно отметить, что эта спецификация является независимым документом и не привязана к конкретным реализациям SDK (Software Development Kit), таким как Python SDK или TypeScript SDK. Она служит авторитетным источником, определяющим, как должен работать протокол MCP.

План урока

  1. Введение в Протокол Контекста Модели (MCP) и JSON-сообщения
  2. Основы Протокола MCP: Коммуникация через JSON
  3. Официальная Спецификация MCP: Источник Истины
  4. Категории Сообщений MCP: Запросы, Результаты и Уведомления
  5. Сообщения типа "Запрос-Результат" (Request-Result Messages)
  6. Сообщения типа "Уведомление" (Notification Messages)
  7. Взаимодействие Клиент-Сервер: Кто Отправляет Сообщения?
  8. Двунаправленная Природа MCP и Выбор Транспорта

Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.

Полезные гиды