Транспорты MCP
Moraya поддерживает три механизма транспорта для связи с серверами MCP.
Транспорт stdio
Транспорт stdio запускает дочерний процесс и осуществляет связь через stdin/stdout. Управляется Rust-бэкендом (MCPProcessManager).
# Пример: Подключение к локальному серверу MCP
Command: npx @modelcontextprotocol/server-filesystem
Args: /path/to/workspace
- Лучше всего подходит для локальных инструментов MCP командной строки
- Жизненный цикл процесса управляется Moraya
- Связь через JSON-RPC поверх stdin/stdout
Транспорт SSE (Server-Sent Events)
Транспорт SSE подключается к удалённому серверу через EventSource для получения сообщений и POST-запросы для отправки.
# Пример SSE-эндпоинта
URL: http://localhost:3001/sse
- Лучше всего подходит для удалённых серверов длительного действия
- Сервер передаёт события через SSE-поток
- Клиент отправляет запросы через HTTP POST
Транспорт HTTP
Транспорт HTTP использует JSON-RPC POST-запросы без сохранения состояния в обоих направлениях.
# Пример HTTP-эндпоинта
URL: http://localhost:3002/mcp
- Самый простой транспорт — стандартный HTTP POST
- Без сохранения состояния, без постоянного соединения
- Хорошо подходит для serverless/облачных функций