Purpose: MCP Percona PG is an MCP server for PostgreSQL and PgBouncer clusters on Kubernetes managed by Percona Operator for PostgreSQL v2. It enables MCP clients to operate clusters in natural language, for example "scale dev-pg to 3 replicas", "switch the connection pool to transaction mode", "restore prod-pg to UTC 12:00".
Main capabilities:
- Discovery and status: list clusters, summarize status by cluster, read raw .status (including Patroni members, PostgreSQL/PgBouncer readiness), connection endpoints, backup and restore records.
- Connection pooling: read and update PgBouncer's pool_mode and global pool parameters (such as default_pool_size, max_client_conn, etc.).
- PostgreSQL tuning: read and merge parameters via spec.patroni.dynamicConfiguration, which is the only Patroni-safe way.
- Lifecycle: scale PostgreSQL/PgBouncer, pause/resume, toggle built-in extensions, on-demand backup.
- Disaster recovery and restore: restore/point-in-time recovery (PITR), promote standby, major version upgrade, each with separate authorization control.
Tool categories:
- Read-only (read-only +): list_contexts, list_clusters, get_cluster, get_cluster_status, get_connection_info, get_pgbouncer_config, get_pg_parameters, list_backups, list_restores.
- Write (read-write +): scale_cluster, set_pgbouncer_config, set_pg_parameters, pause_cluster, toggle_builtin_extension, create_backup.
- Admin (admin): restore_cluster (requires PERCONA_ALLOW_RESTORE), upgrade_cluster (requires PERCONA_ALLOW_UPGRADE), promote_standby, delete_backup / delete_cluster (requires PERCONA_ALLOW_DELETE).
Usage: This server has been published on npm under the package name @dockndevai/mcp-percona-pg, no cloning or building required, and MCP clients can run it on demand via npx. It is recommended to start in read-only mode; see .env.example for all variables and docs/CLIENTS.md for complete guides for each client.
- Claude Code (CLI): add the configuration as documented.
- Claude Desktop, Cursor, Windsurf: use the same configuration block in claude_desktop_config.json, .cursor/mcp.json, or ~/.codeium/windsurf/mcp_config.json.
- OpenAI Codex CLI: configure in ~/.codex/config.toml.
Example prompts:
- "List the PostgreSQL clusters and show the status of dev-pg."
- "What pool_mode does dev-pg use, and how large is the default pool?" -> get_pgbouncer_config
- "Set dev-pg's PgBouncer to transaction pooling and default_pool_size to 25." (requires read-write)
- "Increase dev-pg's shared_buffers to 512MB." (requires read-write)
- "Take a full backup of dev-pg to repo1." (requires read-write)
- "Restore dev-pg to 2026-08-30 12:00:00+00." (requires admin + PERCONA_ALLOW_RESTORE + confirmation)
Applicable scenarios: Suitable for teams that need to automate the operation and maintenance of Percona Operator for PostgreSQL clusters through MCP clients, especially scenarios that require safely performing tuning, backup and restore, and disaster recovery operations.
Limitations and prerequisites:
- Requires a Kubernetes cluster running Percona Operator for PostgreSQL v2 (pgv2.percona.com/v2).
- Requires a kube-config readable by the server. For security, it is recommended to use a ServiceAccount/RBAC scoped to the Operator namespace and the required pgv2.percona.com resources.
- Development scenarios can run from source: prefer the published package; see the repository documentation for how to run from a clone.
- This server provides server.json for the official MCP registry, as well as mcpName for npm ownership verification, see also PUBLISHING.md.
- The official materials do not provide specific charging, price, performance metrics, or usage outcome data.