API VEGA

pREST MCP Adapter

Официальный stdio-адаптер для HTTP MCP-эндпойнта pREST.

Этот адаптер позволяет клиентам MCP, которым требуется stdio, подключаться к запущенному экземпляру pREST, который предоставляет HTTP MCP-эндпойнт по адресу /_mcp.

MCP client / AI IDE
        ↓ stdio (NDJSON JSON-RPC)
prest-mcp
        ↓ HTTP POST
http://localhost:3000/_mcp
        ↓
pREST

Адаптер представляет собой небольшой транспортный мост. Он не выполняет интроспекцию схем, не генерирует SQL и не реализует инструменты MCP. Всё это — в pREST.

Требования

  • Запущенный экземпляр pREST с доступным маршрутом /_mcp

  • Go 1.26+ (для сборки из исходников)

Переменные окружения

ПеременнаяТребуетсяПо умолчаниюОписание
PREST_MCP_URLдаURL HTTP MCP-эндпойнта pREST, например http://localhost:3000/_mcp
PREST_MCP_TOKENнетBearer-токен при включённой аутентификации pREST
PREST_MCP_TIMEOUT_MSнет30000HTTP-таймаут в миллисекундах

Установка

Из исходников

go install github.com/prest/prest-mcp-adapter/cmd/prest-mcp@latest

Docker / OCI

docker pull ghcr.io/prest/prest-mcp-adapter:0.1.3

Локальное использование

PREST_MCP_URL=http://localhost:3000/_mcp prest-mcp

С токеном

PREST_MCP_URL=https://api.example.com/_mcp \
PREST_MCP_TOKEN=secret \
prest-mcp

Использование в Docker

docker run --rm -i \
  -e PREST_MCP_URL=http://host.docker.internal:3000/_mcp \
  ghcr.io/prest/prest-mcp-adapter:0.1.3

Конфигурация MCP-клиента

Cursor

Добавьте в настройки MCP (например, в файл .cursor/mcp.json):

{
  "mcpServers": {
    "prest": {
      "command": "prest-mcp",
      "env": {
        "PREST_MCP_URL": "http://localhost:3000/_mcp"
      }
    }
  }
}

Claude Desktop

Добавьте в claude_desktop_config.json:

{
  "mcpServers": {
    "prest": {
      "command": "prest-mcp",
      "env": {
        "PREST_MCP_URL": "http://localhost:3000/_mcp"
      }
    }
  }
}

Generic MCP-клиент

Любой клиент, который может запустить MCP-сервер через stdio:

PREST_MCP_URL=http://localhost:3000/_mcp prest-mcp

Сообщения протокола — это JSON-RPC по строкам на stdin/stdout. Логи выводятся только в stderr.

Рекомендации по безопасности

  • Используйте пользователя PostgreSQL с правами только на чтение для рабочих процессов AI/MCP, если запись не требуется.
  • Не публикуйте неаутентифицированные MCP-эндпойнты в открытом доступе.
  • Предпочитайте локальные или частные сетевые MCP-эндпойнты pREST.
  • Если включена аутентификация pREST, укажите PREST_MCP_TOKEN как действительный JWT.

Разработка

= 80% make coverage # порог покрытия (gate) только make vet make build # записывает bin/prest-mcp make test # go test -race ./... и общее покрытие >= 80% make coverage # порог покрытия make vet make build # записывает bin/prest-mcp

Лицензия

MIT — см. LICENSE.