К содержанию
Первый Коммит

Модуль 3 после покупки курса

Транспорты — stdio и Streamable HTTP

  • Что такое транспорт
  • stdio и дочерний процесс
  • Отладка вместо print
  • Streamable HTTP
  • Порты и адреса
  • Клиент по URL
  • Выбор транспорта

До этого модуля все серверы работали одинаково: выполнялась команда mcp dev, где-то запускался процесс, Inspector обменивался с ним сообщениями, и вопрос о способе их доставки не возникал. Пора его задать, потому что от ответа зависит, где сможет работать ваш сервер и кто сможет им пользоваться.

Транспорт — это способ доставки сообщений между клиентом и сервером. Сами сообщения от него не зависят: это тот же JSON-RPC, который мы читали в модуле 1, с полями method, params и id. Меняется только канал передачи: это либо потоки ввода-вывода дочернего процесса, либо настоящие HTTP-запросы по сети.

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

Отдельная оговорка: сетевой режим открывает доступ к серверу извне, и защита от такого доступа в этом модуле рассматривается лишь частично. Аутентификация, ограничение доступа, песочница для файловых операций и логирование обращений — тема модуля 9 целиком. Здесь приводится короткое, но обязательное предупреждение и один практический вывод об адресе прослушивания.

Платная часть курса

Остальные модули открывает покупка курса

Первые 2 модуля курса «MCP-серверы» открыты всем. Остальные 8 модулей, включая этот, открываются после покупки курса. Доступ остаётся навсегда вместе со всеми обновлениями курса.

Уже купили этот курс? Войдите, и он откроется.

В этом модуле 12 разделов

  1. 3.1 Что такое транспорт и почему их ровно два
  2. 3.2 stdio: сервер как дочерний процесс
  3. 3.3 Куда выводить отладку: почему print опасен
  4. 3.4 Когда stdio перестаёт годиться
  5. 3.5 Streamable HTTP: поднимаем сервер по сети
  6. 3.6 Порт: выбор, занятость, освобождение
  7. 3.7 Подключаемся к сетевому серверу клиентом
  8. 3.8 Как выбрать транспорт под задачу
  9. 3.9 Сетевой режим и безопасность: обязательное предупреждение
  10. 3.10 Практика: сервер городского велопроката в двух режимах
  11. Итоги модуля 3
  12. Домашнее задание

Введите запрос: название модуля, тема или раздел.

Стрелки — выбор, Enter — открыть. Ищет по названиям модулей, темам и разделам.