pREST

Official registry Data and databases

Stdio MCP adapter bridging AI clients to pREST’s HTTP /_mcp endpoint for PostgreSQL APIs.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

OCI package ghcr.io/prest/prest-mcp-adapter:0.1.3
Claude Code
claude mcp add prest -e 'PREST_MCP_URL=<PREST_MCP_URL>' -e 'PREST_MCP_TOKEN=<your prest_mcp_token>' -e 'PREST_MCP_TIMEOUT_MS=<PREST_MCP_TIMEOUT_MS>' -- docker run -i --rm ghcr.io/prest/prest-mcp-adapter:0.1.3
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "prest": {
            "command": "docker",
            "args": [
                "run",
                "-i",
                "--rm",
                "ghcr.io/prest/prest-mcp-adapter:0.1.3"
            ],
            "env": {
                "PREST_MCP_URL": "<PREST_MCP_URL>",
                "PREST_MCP_TOKEN": "<your prest_mcp_token>",
                "PREST_MCP_TIMEOUT_MS": "<PREST_MCP_TIMEOUT_MS>"
            }
        }
    }
}

Environment variables

  • PREST_MCP_URL required URL of your running pREST HTTP MCP endpoint, for example http://localhost:3000/_mcp
  • PREST_MCP_TOKEN secret Optional bearer token used to authenticate with the pREST MCP endpoint.
  • PREST_MCP_TIMEOUT_MS Optional HTTP timeout in milliseconds. Defaults to 30000.

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. pREST MCP Adapter
  2. Requirements
  3. Environment variables
  4. Install
  5. Local usage
  6. MCP client configuration
  7. Security recommendation
  8. Development
  9. License

pREST MCP Adapter

Official stdio adapter for pREST’s HTTP MCP endpoint.

This adapter lets MCP clients that require stdio connect to a running pREST instance exposing an HTTP MCP endpoint at /_mcp.

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

The adapter is a tiny transport bridge. It does not introspect schemas, generate SQL, or implement MCP tools. Those live in pREST.

Requirements

  • A running pREST instance with the /_mcp route available
  • Go 1.26+ (to build from source)

Environment variables

VariableRequiredDefaultDescription
PREST_MCP_URLyes—URL of the pREST HTTP MCP endpoint, e.g. http://localhost:3000/_mcp
PREST_MCP_TOKENno—Bearer token when pREST auth is enabled
PREST_MCP_TIMEOUT_MSno30000HTTP timeout in milliseconds

Install

From source
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

Local usage

PREST_MCP_URL=http://localhost:3000/_mcp prest-mcp
With token
PREST_MCP_URL=https://api.example.com/_mcp \
PREST_MCP_TOKEN=secret \
prest-mcp
Docker usage
docker run --rm -i \
  -e PREST_MCP_URL=http://host.docker.internal:3000/_mcp \
  ghcr.io/prest/prest-mcp-adapter:0.1.3

MCP client configuration

Cursor

Add to your MCP settings (e.g. .cursor/mcp.json):

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

Add to claude_desktop_config.json:

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

Any client that can launch a stdio MCP server:

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

Protocol messages are newline-delimited JSON-RPC on stdin/stdout. Logs go only to stderr.

Security recommendation

Use a read-only PostgreSQL user for AI/MCP workflows unless write access is explicitly required.

Do not expose unauthenticated MCP endpoints publicly.

Prefer local or private-network pREST MCP endpoints.

When pREST auth is enabled, set PREST_MCP_TOKEN to a valid JWT.

Development

make test       # go test -race ./... and overall coverage >= 80%
make coverage   # coverage gate only
make vet
make build      # writes bin/prest-mcp

License

MIT — see LICENSE.

Frequently asked questions

What is pREST?

Stdio MCP adapter bridging AI clients to pREST’s HTTP /_mcp endpoint for PostgreSQL APIs.

How do I install pREST?

It runs on your machine. In Claude Code: claude mcp add prest -e 'PREST_MCP_URL=<PREST_MCP_URL>' -e 'PREST_MCP_TOKEN=<your prest_mcp_token>' -e 'PREST_MCP_TIMEOUT_MS=<PREST_MCP_TIMEOUT_MS>' -- docker run -i --rm ghcr.io/prest/prest-mcp-adapter:0.1.3. For other clients, paste the JSON configuration from this page into their MCP settings.

Does pREST need an API key?

Yes. It expects PREST_MCP_URL, PREST_MCP_TOKEN, which you set in its configuration.

Is pREST open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains pREST?

It is published by prest. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.