How Faucet compares
PostgREST, Hasura and Supabase are all good tools that solve real problems. Here's where each one fits, and where Faucet's REST + MCP approach is the better pick.
Comparisons
PostgREST
REST ยท PostgreSQL onlyPostgREST turns a PostgreSQL database into a REST API. Faucet does that for seven databases and adds API keys, roles, an admin UI and a built-in MCP server.
- Their strength
- Mature and PostgreSQL-native. Reuses your Postgres roles and RLS.
- Faucet's edge
- 7 databases, built-in RBAC, MCP for AI agents.
Hasura
GraphQL engineHasura is a GraphQL-first engine for PostgreSQL that reaches other databases through data connectors. Faucet is REST + MCP in one binary that runs without Docker.
- Their strength
- GraphQL, subscriptions, row- and column-level permissions.
- Faucet's edge
- REST + OpenAPI 3.1, MCP, single binary, MIT.
Supabase
Backend platformSupabase is a Postgres platform (database, auth, storage, realtime). Faucet puts an API on the databases you already have, including Supabase's Postgres.
- Their strength
- A full backend for new apps: auth, storage, realtime.
- Faucet's edge
- Works with existing databases, one binary, MCP built in.
Short answer
Which one should I use?
- Pick PostgREST if your data lives only in PostgreSQL and you already manage access with Postgres roles and row-level security.
- Pick Hasura if your frontend is built around GraphQL or you need GraphQL subscriptions.
- Pick Supabase if you're starting a new app and want hosted Postgres, user auth, storage and realtime in one place.
- Pick Faucet if you want a REST API and an MCP server on a database you already run (PostgreSQL, MySQL, MariaDB, SQL Server, Oracle, SQLite, or Snowflake) without writing code or running a platform.
At a glance
Quick comparison
| Feature | Faucet | PostgREST | Hasura | Supabase |
|---|---|---|---|---|
| What it is | REST API + MCP server for your existing database | REST server for PostgreSQL | GraphQL engine | Postgres platform (database, auth, storage, realtime) |
| API style | REST + MCP, OpenAPI 3.1 | REST | GraphQL (REST via RESTified endpoints) | REST + GraphQL |
| Databases | 7: PostgreSQL, MySQL, MariaDB, SQL Server, Oracle, SQLite, Snowflake | PostgreSQL only | PostgreSQL-first; others via data connectors | PostgreSQL only |
| MCP server for AI agents | Built in: 8 tools, stdio + Streamable HTTP (/mcp) | No | Not built into the open-source v2 engine | Separate Supabase MCP server for managing your Supabase projects |
| Access control | Built in: roles with per-service / per-table verb permissions; API keys bound to roles; fail-closed | External JWT + PostgreSQL roles and RLS | JWT or auth webhook + permission rules | Supabase Auth + PostgreSQL RLS |
| Admin UI | Embedded in the binary | None | Hasura Console | Supabase Studio |
| Deployment | Single static binary (Linux, macOS, Windows), Docker, npm, Homebrew | Single binary, Docker | Docker or Hasura Cloud | Supabase Cloud or a Docker Compose stack |
| License | MIT | MIT | Apache 2.0 (v2 engine) | Apache 2.0 (most components) |
| Self-hosted price | Free, every feature included | Free | Free (open-source engine); some features are enterprise-only | Free (self-host with Docker Compose) |
Based on public documentation as of October 2026. PostgREST, Hasura and Supabase are trademarks of their respective owners. Spot something out of date? Open an issue.
Turn on your data in 60 seconds
Free, MIT-licensed, no account needed.
npx @faucetdb/faucet serve or brew install faucetdb/tap/faucet