API / Auth / MCP

WebMCP

MCP поверх HTTP: доступ к MCP-серверу через стандартные веб-запросы без локальной установки.

Что такое WebMCP?

WebMCP (MCP over HTTP) — реализация Model Context Protocol поверх стандартных HTTP/SSE-запросов. В отличие от локального MCP (stdio-транспорт), WebMCP позволяет Claude и другим MCP-клиентам подключаться к удалённым MCP-серверам по URL без установки на машину пользователя.

MCP Client → HTTPS → Your MCP Server

     Standard HTTP/SSE transport

Endpoint обычно публикуется по адресу /mcp или /.well-known/mcp.

Зачем нужен WebMCP?

Локальный MCP требует установки сервера на машине каждого пользователя. WebMCP позволяет предоставить MCP-функциональность как SaaS — пользователь добавляет URL в настройки Claude Desktop или другого MCP-клиента и получает инструмент без установки.

Ключевые преимущества:

  • Единая точка обновления — сервер обновляется централизованно, клиенты получают новые инструменты автоматически.
  • OAuth-авторизация — WebMCP-серверы поддерживают стандартный OAuth 2.0 discovery через RFC 9728.
  • Масштабируемость — сервер доступен одновременно всем клиентам, а не установлен локально у каждого.

Как реализовать WebMCP?

Используйте MCP TypeScript SDK с HTTP/SSE-транспортом:

import { Server } from '@modelcontextprotocol/sdk/server/index.js';
import { SSEServerTransport } from '@modelcontextprotocol/sdk/server/sse.js';

const server = new Server({ name: 'my-mcp', version: '1.0.0' }, {
  capabilities: { tools: {} },
});

// Регистрация инструментов
server.setRequestHandler(ListToolsRequestSchema, async () => ({
  tools: [{ name: 'scan', description: 'Scan URL for agent readiness', inputSchema: { ... } }],
}));

// HTTP endpoint
const transport = new SSEServerTransport('/mcp', res);
await server.connect(transport);

Для авторизованного WebMCP добавьте OAuth discovery (/.well-known/oauth-protected-resource) согласно требованиям MCP-спецификации.

Как мы проверяем WebMCP?

Проверка WebMCP в текущей версии сканера находится в статусе coming soon. Полная проверка требует headless-браузера для верификации navigator.modelContext — это запланировано для v2 сканера.

Сейчас проверка webmcp не влияет на итоговый счёт (weight = 0) и возвращает информационный статус. Смежные проверки, которые уже работают: oauth_protected_resource, mcp_server_card.

Источники и спецификации