prest/prest
PostgreSQL ➕ REST, low-code, simplify and accelerate development, ⚡ instant, realtime, high-performance on any Postgres application, existing or new, MCP server
4,609 ★310 forksGoUpdated 2d ago
What you need to know
pRESTd - a production-ready Go API that delivers instant REST and Model Context Protocol (MCP) APIs on top of an existing or new PostgreSQL database, providing CRUD, custom SQL routes, auth, ACL, and a read-only MCP endpoint without hand-writing a backend.
Install
Docker: docker build -t prest/prest:latest . (or use released images) Homebrew: brew install prestd Go: go install / Go Reference at pkg.go.dev/github.com/prest/prest/v2 1-click Heroku deploy via prest-heroku template
Usage
- •Point pREST at Postgres via PREST_PG_URL (or pg.* / DATABASE_URL), then call GET /{database}/{schema}/{table}
- •PostgreSQL version 9.5 or higher required
- •Connect AI clients (Cursor, Claude, etc.) to the read-only MCP endpoint for MCP over HTTP
- •Configure auth, ACL, custom queries, and MCP via docs.prestd.com
Key features
- ✓Instant REST API (CRUD) over Postgres tables/views without writing backend code
- ✓Read-only MCP endpoint exposing the database to AI clients via MCP over HTTP
- ✓Custom SQL routes, auth, and ACL support
- ✓Multi-database support; TimescaleDB integration tests; Go-single-binary distribution
- ✓Production-ready with unit and integration test suites
Best for
Exposing a Postgres database to AI agents (read-only MCP) plus a full REST API, instantly, without a bespoke backend.
Caveats
- ⚠Requires PostgreSQL 9.5 or higher
- ⚠MCP endpoint is read-only
- ⚠Documentation lives at docs.prestd.com (not in the README)
Platforms: Cross-platform (Go binary) · Docker · HerokuClients: Cursor · Claude · AI clients
Documentation ↗Reviewed 2026-08-07
Topics
apibaasbackendcruddatabasedockergolanginstant-apijwtlow-codemcpmicroservicemodel-context-protocolopenapipostgrespostgresqlrest-apiself-hostedsqltimescaledb
- Stars
- 4,609★
- Forks
- 310
- Language
- Go
- License
- MIT
- Created
- 2016-11-22
- Last push
- 2026-08-04