Faucet — Claude Code MCP server: features and installation
Faucet connects to a SQL database and exposes its data through MCP tools and a REST API. Use it when an agent needs role-controlled access to database records.
claude mcp add --env FAUCET_DATA_DIR=<FAUCET_DATA_DIR> --transport stdio faucet -- npx -y @faucetdb/faucetWhat Faucet does
Faucet inspects a connected SQL database and builds MCP tools and REST endpoints from its schema. It supports PostgreSQL, MySQL, MariaDB, SQL Server, Oracle, Snowflake, and SQLite. Schema inspection happens at runtime, so you do not need to generate API code separately.
Access controls include roles and API keys, with JWT authentication also available. Faucet generates OpenAPI 3.1 documentation and includes an admin UI. Roles and keys need configuration; the access controls do not configure themselves.
To add it to Claude Code, run claude mcp add faucet -- npx -y @faucetdb/faucet. An alternate command sets FAUCET_DATA_DIR with --env; replace its placeholder with the data directory path. Faucet is distributed as a single Go binary, while this setup command runs it through npx.
What it helps with
- give an agent MCP access to a SQL database
- generate CRUD REST endpoints from a database schema
- create OpenAPI 3.1 documentation for database endpoints
- connect supported databases through one server
Example prompts for the agent
- Inspect the tables available in the connected database.
- Find database records that match this condition.
- Add a new record to the table using these values.
How to install Faucet
Platform CLI
claude mcp add --env FAUCET_DATA_DIR=<FAUCET_DATA_DIR> --transport stdio faucet -- npx -y @faucetdb/faucetReplace <…> with your own values
Platform CLI
codex mcp add faucet --env FAUCET_DATA_DIR=<FAUCET_DATA_DIR> -- npx -y @faucetdb/faucetReplace <…> with your own values
Config file
{
"mcpServers": {
"faucet": {
"command": "npx",
"args": [
"-y",
"@faucetdb/faucet"
],
"env": {
"FAUCET_DATA_DIR": "<FAUCET_DATA_DIR>"
}
}
}
}Replace <…> with your own values
Config file
{
"servers": {
"faucet": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@faucetdb/faucet"
],
"env": {
"FAUCET_DATA_DIR": "<FAUCET_DATA_DIR>"
}
}
}
}Replace <…> with your own values
Platform CLI
gemini mcp add -e FAUCET_DATA_DIR=<FAUCET_DATA_DIR> faucet npx -y @faucetdb/faucetReplace <…> with your own values
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about Faucet
How do I install Faucet in Claude Code?
Run claude mcp add faucet -- npx -y @faucetdb/faucet. For the option that sets a data directory, run claude mcp add --env FAUCET_DATA_DIR=<FAUCET_DATA_DIR> --transport stdio faucet -- npx -y @faucetdb/faucet.
What does Faucet do?
Faucet inspects a SQL database schema and creates MCP tools and REST endpoints for its data. It also generates OpenAPI documentation and includes an admin UI.
Which databases does Faucet support?
It supports PostgreSQL, MySQL, MariaDB, SQL Server, Oracle, Snowflake, and SQLite.