Postgres diagnostics and cluster operations for Multigres clusters.
MCPpedia last refreshed this data
io.github.JoongHyuk-Shin/multigres-mcp is an MCP server that postgres diagnostics and cluster operations for Multigres clusters. Its tool list has not been published yet over stdio, sse and http, requires no API key, and scores 44/100 on MCPpedia's security, maintenance and efficiency rubric.
Config is the same across clients - only the file and path differ.
{
"mcpServers": {
"multigres": {
"env": {
"DATABASE_URI": "postgres://postgres:postgres@localhost:15432/postgres"
},
"args": [
"--admin-url",
"http://localhost:15000",
"--node-host-map",
"localhost=172.18.0.2"
],
"type": "stdio",
"command": "/path/to/multigres-mcp"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Postgres diagnostics and cluster operations for Multigres clusters.
No automated test available for this server. Check the GitHub README for setup instructions.
Five weighted categories - click any category to see the underlying evidence.
No known CVEs.
No package registry to scan.
Be the first to review
Have you used this server?
Share your experience - it helps other developers decide.
Sign in to write a review.
Others in data
Token-efficient database MCP server for PostgreSQL, MySQL, MariaDB, SQL Server, Oracle, SQLite
Manage Supabase projects — databases, auth, storage, and edge functions
A cross-platform desktop application for managing AI Agents and MCP Servers. 一款用于管理AI智能体与MCP服务器的跨平台桌面应用程序。
Extract data from any website with thousands of scrapers, crawlers, and automations on Apify Store ⚡
MCP Security Weekly
Get CVE alerts and security updates for io.github.JoongHyuk-Shin/multigres-mcp and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
An MCP server for Multigres clusters. It gives an MCP client two groups of tools:
The server is read-only by default. Write tools are registered only in the unrestricted mode.
It has been tested against a local Multigres Docker cluster built from commit 5fa0f2955ede (2026-11-10, PostgreSQL 17.7, two cells) on Linux with Docker Engine. Other setups have not been tested.
Each release has a multigres-mcp-<version>.mcpb file. It is an MCP Bundle: clients that install bundles ask for the settings under "Configuration" and run the server. It is also a zip file whose server/ directory holds binaries for Linux and macOS on amd64 and arm64 and for Windows on amd64, which any other client can run directly.
Requires Go 1.26 or later.
git clone https://github.com/JoongHyuk-Shin/multigres-mcp
cd multigres-mcp
go build -o multigres-mcp ./cmd/multigres-mcp
The server talks MCP over standard input and output. ./multigres-mcp --help prints the options.
packaging/build-mcpb.sh builds the release bundle into dist/. It also needs jq, Node.js and openssl.
Every option can be given as a flag or as an environment variable. A flag wins over the variable.
| Flag | Variable | Default | Meaning |
|---|---|---|---|
--database-url | DATABASE_URI | none, required | Connection string of the Multigres gateway. |
--admin-url | MULTIGRES_ADMIN_URL | none | multiadmin HTTP address. The cluster tools are registered only when it is set. |
--admin-token | MULTIGRES_ADMIN_TOKEN | none | Bearer token for multiadmin started with --enable-auth. |
--node-host-map | MULTIGRES_NODE_HOST_MAP | none | reported=reachable host pairs, comma separated, for the direct node connections of read_node_log and of the node option of diagnose and get_top_queries. multiadmin reports each node's host as the cluster sees it; this replaces a host that the server cannot reach. Ports are not changed. |
--access-mode | MULTIGRES_MCP_ACCESS_MODE | restricted | restricted (read-only) or unrestricted (adds the write tools). |
--sql-timeout | MULTIGRES_MCP_SQL_TIMEOUT | 25s | Statement timeout for the SQL every tool sends. See "Things to know". |
Direct node connections reuse the user, password and database of --database-url and take the host and port from multiadmin.
In the local Docker cluster both nodes report the host localhost, while their Postgres ports are reachable only at the container's address. Find that address in the Multigres checkout with:
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' "$(docker compose ps -q multigres)"
and pass it as --node-host-map localhost=<address>.
With Claude Code, for the local Docker cluster (replace 172.18.0.2 with the address found above):
claude mcp add multigres -e DATABASE_URI=postgres://postgres:postgres@localhost:15432/postgres -- /path/to/multigres-mcp --admin-url http://localhost:15000 --node-host-map localhost=172.18.0.2
Other clients take the same command, arguments and environment in their server configuration, for example:
{
"mcpServers": {
"multigres": {
"type": "stdio",
"command": "/path/to/multigres-mcp",
"args": ["--admin-url", "http://localhost:15000", "--node-host-map", "localhost=172.18.0.2"],
"env": {
... [View full README on GitHub](https://github.com/joonghyuk-shin/multigres-mcp#readme)