pgops-mcp
pgops-mcp
Ein produktionsreifer MCP-Server, der KI-Agenten sichere, geprüfte und fachkundige Kontrolle über eine echte PostgreSQL-Datenbank und den dazugehörigen Docker-Stack gibt — keine Shell-Befehle, keine Python-Skripte, nur Tools.
Warum
Bestehende Postgres-MCP-Server sind dünne Query-Wrapper: Introspection + SELECT. Keiner verwaltet
Migrationen mit Lock-Impact-Analyse, keiner diagnostiziert Performance anhand von EXPLAIN +
pg_stat_statements, keiner versteht die containerisierte Umgebung, in der die Datenbank lebt.
Agenten, die heute Datenbanken bedienen, fliegen blind und unsicher.
pgops-mcp ist das Operations-Gehirn: Schema-Intelligenz → geschützte Queries → Migrations-Engine
→ Performance-Diagnose → Umgebungsbewusstsein, mit einer Sicherheitsarchitektur, die jede Aktion
klassifizierbar, bestätigbar und prüfbar macht.
Related MCP server: PostgreSQL MCP Server
Tool-Oberfläche (v0.1)
Gruppe | Tools |
Schema |
|
Queries |
|
Performance |
|
Migrationen |
|
Umgebung |
|
Gated |
|
* Werden nur registriert, wenn der Server mit --approval-mode läuft, und selbst dann
benötigt jeder Aufruf ein Bestätigungstoken. container.exec erzwingt zusätzlich eine
Read-only-Allowlist für Diagnosebefehle — es bietet keine Shell. Der Docker-Socket ist
auf dem Host root-äquivalent, daher ist der Standard Read-only-Zugriff.
Sicherheitsmodell (das zentrale Unterscheidungsmerkmal)
Getrennte Read-only-/Read-write-Verbindungsrollen; Tools sind an die richtige Rolle gebunden
Statement-Klassifizierung vor der Ausführung — unbegrenzte
DELETE/UPDATEwerden blockiertDestruktive Aktionen erfordern explizite Bestätigungstokens
Jedes ausgeführte Statement landet in einem Append-only-Audit-Log mit Zeitmessung und Urteil
Abbruch von außer Kontrolle geratenen Queries mit Timeout-Stufen
MCP-Oberfläche
Primitive | Was hier vorhanden ist |
Tools | 13 — Schema, Query, Explain, Advise, Migration, Umgebung |
Ressourcen |
|
Prompts |
|
Elicitation | Gefährliche Aktionen fragen den Benutzer direkt, nicht über den Agenten; Bestätigungstokens sind der Fallback |
Fortschritt / Logging | Best-Effort-Benachrichtigungen bei langen Operationen |
Remote-Zugriff & Agent-Tokens
stdio benötigt keine Authentifizierung — der Server ist ein Subprozess, den Ihr Client startet, ohne offenen Port. HTTP schon, daher weigert er sich, ohne Schlüssel zu starten:
pgops-mcp keygen # RS256 keypair
pgops-mcp issue-token --subject my-agent # read-only by default
pgops-mcp issue-token --subject deploy-bot --scope pgops:read --scope pgops:write
pgops-mcp scopes # which scope each tool needs
pgops-mcp --transport http --public-key ~/.pgops/keys/pgops_public.pemDer Server hält nur den öffentlichen Schlüssel, kann also Tokens verifizieren, aber nie selbst erstellen.
Scopes (pgops:read / pgops:write / pgops:admin) entsprechen denselben Gefahrenstufen wie die
Schutzmechanismen, und ein Tool ohne Scope-Eintrag erfordert admin — Deny by Default. Bindet an
Loopback, sofern nicht anders angegeben.
Schnellstart
uv sync
# point at your local Postgres in Docker:
export PGOPS_DSN="postgresql://user:pass@localhost:5432/mydb"
uv run pgops-mcp # stdio transport for Claude Desktop / Cursor / VS CodeZu Claude Desktop hinzufügen:
{
"mcpServers": {
"pgops": {
"command": "uv",
"args": ["run", "--directory", "/path/to/pgops-mcp", "pgops-mcp"]
}
}
}Dokumentation
docs/PRD.md— Was & Warum, Ziele, Nicht-Zieledocs/SPEC.md— Phasenweise technische Spezifikation mit harten Gatesdocs/ARCHITECTURE.md— Systemdesign + Trade-offsdocs/TOOLS.md— Vollständiger Tool-Katalog mit Schemas & Beispielendocs/adr/— Architektur-Entscheidungsprotokolledocs/flow.md— Laufendes Fortschrittsprotokolldocs/interview_prep.md— Wachsendes Interview-Fragen & Antworten
Status
Phasen 0–6b abgeschlossen (319 Tests, jede Schutzmaßnahme, jedes Urteil und jede Lock-Impact-Regel gegen echtes Postgres via testcontainers verifiziert — keine Mocks — plus End-to-End-Suiten, die den Server als echten MCP-Subprozess über stdio und als authentifizierten HTTP-Server betreiben).
Phase | Status | Tools |
0 · Bootstrap | ✅ | Seed-Dev-Stack (1,2M-Zeilen- |
1 · Verbindungskern + Lesepfad | ✅ |
|
2 · Schreibpfad + Sicherheit | ✅ |
|
3 · Performance-Gehirn | ✅ |
|
4 · Migrations-Engine | ✅ |
|
5 · Docker-Schicht | ✅ |
|
6a · MCP-Vollständigkeit | ✅ | Ressourcen, Prompts, Elicitation, Fortschritt |
6b · Remote + Auth | ✅ | HTTP-Transport, JWT, Scoped-Agent-Tokens, Keygen-CLI |
6c · Verpackung | als Nächstes | PyPI, Smithery, MCP-Registry |
migration.rollback ist bewusst noch offen — siehe docs/TOOLS.md.
Beispiel dafür, was migration.plan für eine Typänderung an der 1,2M-Zeilen-orders-Tabelle zurückgibt:
ALTER TABLE "orders" ALTER COLUMN "total_cents" TYPE bigint
op=table_rewrite risk=high estimate=4800ms confidence=medium
why: rewrites every row and rebuilds every index, holding AccessExclusiveLock
SAFER: add a new column of the target type, backfill in batches, sync with a
trigger, swap the names, then drop the old columnSchnellstart der Dev-Datenbank (Host-Port 5433, um eine lokale Postgres-Instanz auf 5432 nicht zu kollidieren):
docker compose up -d
export PGOPS_DSN="postgresql://pgops:pgops_dev@localhost:5433/pgops_demo"
uv run pgops-mcp --selfcheckThis server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to interact with PostgreSQL databases through schema intelligence, query execution, and DBA tooling including index analysis and health monitoring. Features configurable access levels and audit logging for secure database operations.539MIT
- FlicenseNot gradedqualityDmaintenanceExposes PostgreSQL database operations as tools for AI assistants, allowing SQL queries and schema inspection.
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with PostgreSQL databases through natural language queries, schema inspection, and safe SQL execution.91
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to safely interact with PostgreSQL databases, perform queries, inspect schemas, and analyze query performance.2
Related MCP Connectors
Query PostgreSQL databases in plain English — LLM-generated, safety-validated SQL.
Comprehensive PostgreSQL documentation and best practices, including ecosystem tools
Analytical memory for AI agents: a real Postgres queried in plain English over MCP. One command.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/arzharch/pgops-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server