qh MCP server
io.github.anderson-0/qh·v1.0.3Query PostgreSQL, MySQL, MariaDB, SQLite and MongoDB with two tools and few tokens.
not scanned yet
0 stars
Reviews
Write oneNobody has reviewed qh yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
qh tools
No tool declarations could be read from the package source. They show once the server is installed.
How qh compares
Against every graded Databases MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 73/100
- higher than 32% of 802 Databases servers
Release history: 2 versions in the registry since 2026-10-14, latest 2026-10-15, typically one every 2 days.
Install qh in Claude Code, Cursor or VS Code
claude mcp add qh -- docker run -i --rm ghcr.io/anderson-0/qh:1.0.3
What the publisher says
From the qh repository's README, as published. We do not edit it. Read it on GitHub
qh
A database server for AI agents, built to use as few tokens as possible. It exposes two MCP tools, whatever the number of connections, and names the connections in its MCP instructions:
Supported now: PostgreSQL 13+, MySQL 8.0.16+, MariaDB 10.6+, SQLite and MongoDB (7 and 8). qh serve adds an HTTP server mode with a REST API, and bench/ compares qh with dbhub and with mongodb-mcp-server (see bench/README.md).
Install
Download a binary for Linux, macOS or Windows (amd64 or arm64) from the releases page, unpack it and put qh on your PATH. Each release lists SHA-256 checksums in checksums.txt. The binaries are not signed: on macOS, a binary downloaded with a browser needs xattr -d com.apple.quarantine qh before its first run.
Or run the server image, which starts server mode on port 8765 and keeps its store in the /data volume. Create the master key once and keep it: it decrypts the stored connection strings, so pass the same key every time you recreate the container, for example to upgrade:
openssl rand -base64 32 > qh-master.key && chmod 600 qh-master.key
docker run -d --name qh -p 127.0.0.1:8765:8765 -v qh-data:/data \
-e QH_MASTER_KEY="$(cat qh-master.key)" ghcr.io/anderson-0/qh:1
docker logs qh # shows the admin API key once, on first startfront of qh before exposing it to other machines.
- Exposure. API keys travel in plain HTTP, so the example listens on localhost only. Put a TLS proxy in
the Docker host as host.docker.internal; on Linux, add --add-host=host.docker.internal:host-gateway.
- Arguments. Arguments after the image name replace the default serve --http :8765.
- Reaching host databases. Inside the container, localhost is the container itself. Reach a database on
- Health checks. GET /healthz answers ok without a key, for liveness and readiness probes.
- Storage. The image runs as uid 65532:
- a named volume works as shown;
- a bind-mounted directory must be writable by that uid (chown 65532 DIR);
- on Kubernetes, set securityContext.fsGroup: 65532.
Or build it with Go:
go install github.com/anderson-0/qh/cmd/qh@latestAdd a connection
Connections are read-only unless you pass --mode rw. Pass --dsn - to read the connection string from stdin so the password stays out of your shell history:
qh conn add shop --engine postgres --dsn - --description "Orders and customers"qh conn add local --engine sqlite --dsn ./app.dbqh conn add app --engine mysql --dsn - --description "Product catalogue"Connection strings are encrypted (AES-256-GCM) in ~/.config/qh/qh.db; the key is ~/.config/qh/master.key (or $QHMASTERKEY). $XDGCONFIGHOME/qh is used instead of ~/.config/qh when $XDGCONFIGHOME is set; set $QH_HOME to use another directory.
Use it from your editor
qh speaks MCP over stdio with qh mcp. Connections you add or edit with qh conn while it runs are used on the agent's next call (not when QH_DSN is set; see below). Some apps don't inherit your shell's PATH; if the server fails to start, use the full path that which qh prints instead of qh.
Claude Code
claude mcp add qh -- qh mcpCodex CLI
codex mcp add qh -- qh mcpGemini CLI
gemini mcp add -s user qh qh mcpVS Code (GitHub Copilot agent mode)
code --add-mcp '{"name":"qh","command":"qh","args":["mcp"]}'Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
qh: common questions
- Is qh MCP server safe?
- Mostly: it is graded B (73/100). Read the qh safety report
- How do I install qh?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does qh need an API key?
- Yes. The registry entry asks for
QH_DSN. - Is qh maintained?
- The last commit was 19 days ago (2026-10-14). The latest release is v1.0.3.
- What can I use instead of qh?
- Servers from other publishers that do the same job: DBHub MCP server, Faucet MCP server and NeoSQL MCP server.
Alternatives to qh
Same job from other publishers: the closest match first, then the best rated.
- DBHubToken-efficient database MCP server for PostgreSQL, MySQL, MariaDB, SQL Server, Oracle, SQLitenot reviewedWidely usedA
- FaucetSQL database to MCP tools and REST API: PostgreSQL, MySQL, SQL Server, Oracle, SQLite, Snowflake.not reviewedEstablishedA
NeoSQL MCPSchemas, SQL, ERDs, and codegen for PostgreSQL, MySQL, Oracle, SQLite, and more via NeoSQL Desktop.not reviewedGrowingA- DB ExplorerRead-only SQL for PostgreSQL, MySQL and SQLite: schema, safe SELECTs, EXPLAIN, index advicenot reviewedGrowingB
- Gnosis MCPZero-config MCP server for searchable documentation. SQLite or PostgreSQL.not reviewedGrowingA