qh MCP
A token-efficient database MCP server for AI agents written in Go. It supports PostgreSQL, MySQL, MariaDB, SQLite, and MongoDB. It exposes two tools: 'schema' for table overviews and definitions, and 'query' for running SQL statements and returning TSV results. It can run as a CLI tool, an HTTP server, or a Docker container.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
What you can do with it
- Retrieve database schema and table definitions
- Execute SQL queries and return results
- Connect to multiple database engines
- Run as a local HTTP server for agents
Source and maintenance
- Last repository push
- Latest release
- v1.0.3
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
ghcr.io/anderson-0/qh:1.0.3
{
"transport": "stdio",
"identifier": "ghcr.io/anderson-0/qh:1.0.3",
"runtimeHint": "docker",
"registryType": "oci",
"packageArguments": [
{
"type": "positional",
"value": "mcp"
}
],
"environmentVariables": [
{
"name": "QH_DSN",
"isRequired": true,
"description": "Connection string of the database to query, e.g. postgres://reader:password@db.example.com:5432/shop"
},
{
"name": "QH_ENGINE",
"choices": [
"postgres",
"mysql",
"mariadb",
"sqlite",
"mongodb"
],
"description": "Database engine, needed only when QH_DSN does not start with a known scheme (postgres://, postgresql://, mysql://, mariadb://, mongodb://, mongodb+srv://, sqlite://) or end in .db, .sqlite or .sqlite3"
},
{
"name": "QH_NAME",
"description": "Name the agent sees for the connection (default db)"
},
{
"name": "QH_DESCRIPTION",
"description": "One line telling the agent what the database holds"
},
{
"name": "QH_MODE",
"choices": [
"ro",
"rw"
],
"default": "ro",
"description": "ro (default) for read-only, or rw to allow writes"
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · repository · passed · metadata changed · updated
- · backfill · recorded · Pre-expansion baseline; unobserved rich metadata remains unknown
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"qh-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"QH_DSN=<YOUR_QH_DSN>",
"-e",
"QH_ENGINE=<YOUR_QH_ENGINE>",
"-e",
"QH_NAME=<YOUR_QH_NAME>",
"-e",
"QH_DESCRIPTION=<YOUR_QH_DESCRIPTION>",
"-e",
"QH_MODE=<YOUR_QH_MODE>",
"ghcr.io/anderson-0/qh:1.0.3",
"mcp"
],
"env": {
"QH_DSN": "<YOUR_QH_DSN>",
"QH_ENGINE": "<YOUR_QH_ENGINE>",
"QH_NAME": "<YOUR_QH_NAME>",
"QH_DESCRIPTION": "<YOUR_QH_DESCRIPTION>",
"QH_MODE": "<YOUR_QH_MODE>"
}
}
}
}Cline
{
"mcpServers": {
"qh-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"QH_DSN=<YOUR_QH_DSN>",
"-e",
"QH_ENGINE=<YOUR_QH_ENGINE>",
"-e",
"QH_NAME=<YOUR_QH_NAME>",
"-e",
"QH_DESCRIPTION=<YOUR_QH_DESCRIPTION>",
"-e",
"QH_MODE=<YOUR_QH_MODE>",
"ghcr.io/anderson-0/qh:1.0.3",
"mcp"
],
"env": {
"QH_DSN": "<YOUR_QH_DSN>",
"QH_ENGINE": "<YOUR_QH_ENGINE>",
"QH_NAME": "<YOUR_QH_NAME>",
"QH_DESCRIPTION": "<YOUR_QH_DESCRIPTION>",
"QH_MODE": "<YOUR_QH_MODE>"
}
}
}
}VS Code
{
"servers": {
"qh-mcp": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"QH_DSN=<YOUR_QH_DSN>",
"-e",
"QH_ENGINE=<YOUR_QH_ENGINE>",
"-e",
"QH_NAME=<YOUR_QH_NAME>",
"-e",
"QH_DESCRIPTION=<YOUR_QH_DESCRIPTION>",
"-e",
"QH_MODE=<YOUR_QH_MODE>",
"ghcr.io/anderson-0/qh:1.0.3",
"mcp"
],
"env": {
"QH_DSN": "<YOUR_QH_DSN>",
"QH_ENGINE": "<YOUR_QH_ENGINE>",
"QH_NAME": "<YOUR_QH_NAME>",
"QH_DESCRIPTION": "<YOUR_QH_DESCRIPTION>",
"QH_MODE": "<YOUR_QH_MODE>"
}
}
}
}Claude Desktop
{
"mcpServers": {
"qh-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"QH_DSN=<YOUR_QH_DSN>",
"-e",
"QH_ENGINE=<YOUR_QH_ENGINE>",
"-e",
"QH_NAME=<YOUR_QH_NAME>",
"-e",
"QH_DESCRIPTION=<YOUR_QH_DESCRIPTION>",
"-e",
"QH_MODE=<YOUR_QH_MODE>",
"ghcr.io/anderson-0/qh:1.0.3",
"mcp"
],
"env": {
"QH_DSN": "<YOUR_QH_DSN>",
"QH_ENGINE": "<YOUR_QH_ENGINE>",
"QH_NAME": "<YOUR_QH_NAME>",
"QH_DESCRIPTION": "<YOUR_QH_DESCRIPTION>",
"QH_MODE": "<YOUR_QH_MODE>"
}
}
}
}Let your agent find its tools
Find servers like qh MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.