loading…
Search for a command to run...
loading…
A read-only PostgreSQL MCP server that enables AI agents to perform schema introspection and execute SELECT-only queries. It supports secure database connection
A read-only PostgreSQL MCP server that enables AI agents to perform schema introspection and execute SELECT-only queries. It supports secure database connections through SSL and SSH tunnels while offering a structure-only mode to restrict query access.
Read-only PostgreSQL MCP server for AI agents. Exposes schema introspection and SELECT-only query execution over the Model Context Protocol.
# npx (no install needed)
npx tusk-mcp --host db.example.com --database mydb
# or clone + run
bun install
bun run src/index.ts --host localhost --database mydb
Interactive browser-based setup that generates config for Claude Desktop, Claude Code, Cursor, Windsurf, and OpenAI Codex.
npx tusk-mcp setup
bun run build # Windows
bun run build:linux # Linux
bun run build:macos # macOS ARM
tusk-mcp --host db.example.com --port 5432 --user admin --password 'p@ss' --database mydb
tusk-mcp --connection-string "postgres://admin:p%[email protected]:5432/mydb"
Unencoded special characters in passwords (@, #) are handled automatically.
PGHOST=db.example.com PGDATABASE=mydb tusk-mcp
Priority: flags > --connection-string > DATABASE_URL > PG* env vars
# From file (Docker/K8s secrets)
tusk-mcp --host db --database mydb --password-file /run/secrets/db_pass
# From command (any secrets manager)
tusk-mcp --host db --database mydb --password-cmd 'vault kv get -field=password secret/db'
tusk-mcp --host db --database mydb --password-cmd 'op read op://vault/db/password'
Providing any certificate file automatically enables SSL.
tusk-mcp --host db --database mydb --ssl-ca /path/to/ca.crt # CA verification
tusk-mcp --host db --database mydb \ # mutual TLS
--ssl-ca ca.crt --ssl-cert client.crt --ssl-key client.key
tusk-mcp --host db-internal --database mydb \
--ssh-host bastion.example.com --ssh-user deploy --ssh-key ~/.ssh/id_rsa
Disables execute-query tool. Agents can see schema but not run queries.
tusk-mcp --host db --database mydb --structure-only
| Tool | Description |
|---|---|
list-schemas |
List non-system schemas |
list-tables |
Tables and views with estimated row counts (partitions filtered out) |
describe-table |
Columns, types, PKs, FKs, and enum values inline |
execute-query |
Read-only SQL with limit (disabled in structure-only mode) |
Tool results use compact text in content for the AI model and JSON-safe
preview data in structuredContent for clients that support structured MCP
output. Query text uses a tab-delimited preview with null=\N; strings are
JSON-quoted, so empty strings render as "" and the literal string "\\N" is
distinct from SQL null.
{
"mcpServers": {
"tusk": {
"command": "npx",
"args": ["-y", "tusk-mcp", "--host", "localhost", "--database", "mydb"]
}
}
}
claude mcp add --transport stdio tusk -- npx -y tusk-mcp --host localhost --database mydb
[mcp_servers.tusk]
command = "npx"
args = ["-y", "tusk-mcp", "--host", "localhost", "--database", "mydb"]
| Flag | Type | Default | Description |
|---|---|---|---|
--host |
string | localhost | PostgreSQL host |
--port |
number | 5432 | PostgreSQL port |
--user |
string | — | Database user |
--password |
string | — | Database password |
--password-file |
string | — | Read password from file |
--password-cmd |
string | — | Run command for password |
--database |
string | — | Database name |
--connection-string |
string | — | Full connection URL |
--ssl-ca |
string | — | CA certificate path (enables SSL) |
--ssl-cert |
string | — | Client certificate path (enables SSL) |
--ssl-key |
string | — | Client key path (enables SSL) |
--ssh-host |
string | — | SSH tunnel host |
--ssh-port |
number | 22 | SSH tunnel port |
--ssh-user |
string | — | SSH username |
--ssh-key |
string | — | SSH private key path |
--ssh-password |
string | — | SSH password |
--structure-only |
boolean | false | Disable execute-query |
Run in your terminal:
claude mcp add tusk-mcp -- npx Yes, Tusk MCP is free — one-click install via Unyly at no cost.
No, Tusk runs without API keys or environment variables.
A hosted option is available: Unyly runs the server in the cloud, no local setup required.
Open Tusk on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Query your database in natural language
by AnthropicA universal database MCP server supporting simultaneous connections to multiple databases. It provides tools for database operations, health analysis, SQL optim
by wenb1n-devThis server enables interaction with PostgreSQL databases through the Model Context Protocol, optimized for the AWS Bedrock AgentCore Runtime. It provides tools
by madhurprashRead-only database access with schema inspection.
by modelcontextprotocolNot sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All data MCPs