Back to Blog

Introducing Faucet: Turn Any SQL Database into a REST API

Faucet is an open-source, single-binary server that generates secure REST APIs from any SQL database. Here's why we built it and how it works.

Faucet is an open-source server that turns any SQL database into a secure, governed REST API — in under 60 seconds. No Docker. No dependencies. Just one 47 MB binary.

The Problem

Building REST APIs for databases is tedious. You write the same CRUD endpoints, the same authentication middleware, the same pagination logic — over and over. Existing solutions either lock you into one database (PostgREST), require a complex Docker stack (DreamFactory), or force you into GraphQL (Hasura).

The Solution

Faucet takes a different approach: one binary, every database. Point it at PostgreSQL, MySQL, MariaDB, SQL Server, Oracle, SQLite, or Snowflake — and get a full REST API with:

  • Role-based access control with per-table, per-column permissions
  • OpenAPI 3.1 documentation generated automatically from your schema
  • Native MCP server so AI agents like Claude can query your data directly
  • Embedded admin UI for managing connections, roles, and API keys

Performance

We benchmarked Faucet against every major database-to-API platform. The results speak for themselves:

  • 15x faster than DreamFactory (724 rps vs 64 rps)
  • Only 5% degradation under 5x traffic spikes (vs 76% for PostgREST)
  • 55x smaller footprint (47 MB vs 2.6 GB)

Get Started

Install Faucet in one command:

brew install faucetdb/tap/faucet
faucet serve
faucet db add --name mydb --driver postgres --dsn "postgres://user:pass@localhost/mydb"

Your REST API is now live at http://localhost:8080/api/v1/mydb/_table/.

What’s Next

We’re actively developing Faucet and shipping fast. Follow our progress on GitHub and star the repo to stay updated.

Faucet is MIT licensed and free forever. Get started today.