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 | нет | 30000 | HTTP-таймаут в миллисекундах |
Установка
Из исходников
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.