Postgres MCP
Überblick
Beschreibung vom Entwickler (englisches Original)
PostgreSQL MCP wrapper with .env credential mapping, tool selection, and safe read-only defaults.
Was du damit machen kannst
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
- Verbindung: Läuft auf deinem Computer
- Transport: stdio
- Kategorie: Datenbanken & Datensätze
Installation
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
2/2 Prüfungen bestanden · Läuft auf deinem Computer
Zuerst: Welche KI nutzt du?
Wähle deine App, dann erscheinen die Schritte unten.
Klappt mit Claude, aber erst etwas vorbereiten
Du brauchst einen Schlüssel von Postgres MCP (auf der Seite des Anbieters registrieren, kann kosten) · Installiere zuerst Node.js auf deinem Computer (nur einmal) · Nur in der Claude-App für den Computer (Windows oder Mac), nicht im Web oder auf dem Handy
Node.js installieren
Nur einmal; gilt für alle Server, die Node.js brauchen
Bei Postgres MCP registrieren und Schlüssel erstellen
Öffne die Seite des Anbieters, registriere dich und erstelle einen API-Schlüssel für den nächsten Schritt. Kann Geld kosten.
Wie du einen Schlüssel bekommst, steht unten im README des Anbieters
Einstellungsdatei der Claude-Desktop-App öffnen
SettingsDeveloperEdit Config
Diese Einstellungen einfügen und speichern
{ "mcpServers": { "postgres": { "command": "npx", "args": [ "-y", "@edelciomolina/postgres-mcp" ], "env": { "MCP_KEY_HOST": "your-value", "MCP_KEY_PORT": "your-value", "MCP_KEY_NAME": "your-value", "MCP_KEY_USER": "your-value", "MCP_KEY_PASS": "your-value", "MCP_KEY_SSLMODE": "your-value" } } } }Füge den Schlüssel nur in das Feld der App ein, nie in einen Chat und schick ihn niemandem
Claude beenden und neu öffnen
Ausprobieren
Nutze Postgres MCP und sag mir, was du für mich tun kannst; zeig mir dann eine Sache✓ Wenn Claude sagt, dass es Postgres MCP nutzt, oder ein Werkzeug von Postgres MCP in der Antwort zeigt, bist du verbunden
Menünamen am 11. Nov. 2026 mit der Hilfe von Anthropic abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen
ChatGPT kann Postgres MCP noch nicht verbinden
Postgres MCP läuft auf deinem Computer, aber ChatGPT verbindet nur Server, die im Web laufen
Das kannst du stattdessen tun
A · Eine App nutzen, die Postgres MCP verbinden kann
- Du brauchst einen Schlüssel von Postgres MCP (auf der Seite des Anbieters registrieren, kann kosten) · Installiere zuerst Node.js auf deinem Computer (nur einmal) · Nur in der Claude-App für den Computer (Windows oder Mac), nicht im Web oder auf dem Handy
- Du brauchst einen Schlüssel von Postgres MCP (auf der Seite des Anbieters registrieren, kann kosten) · Installiere zuerst Node.js auf deinem Computer (nur einmal)
- Du brauchst einen Schlüssel von Postgres MCP (auf der Seite des Anbieters registrieren, kann kosten) · Installiere zuerst Node.js auf deinem Computer (nur einmal)
- Du brauchst einen Schlüssel von Postgres MCP (auf der Seite des Anbieters registrieren, kann kosten) · Installiere zuerst Node.js auf deinem Computer (nur einmal)
B · Andere in Datenbanken & Datensätze, die mit ChatGPT funktionieren
Aus den meistgenutzten derselben Kategorie, nur solche, die per Adresse ohne Schlüssel verbinden
- Supabase✓ ChatGPT
- Appwrite MCP✓ ChatGPT
- Pg Aiguide✓ ChatGPT
Klappt mit Claude Code, aber erst etwas vorbereiten
Du brauchst einen Schlüssel von Postgres MCP (auf der Seite des Anbieters registrieren, kann kosten) · Installiere zuerst Node.js auf deinem Computer (nur einmal)
Node.js installieren
Nur einmal; gilt für alle Server, die Node.js brauchen
Bei Postgres MCP registrieren und Schlüssel erstellen
Öffne die Seite des Anbieters, registriere dich und erstelle einen API-Schlüssel für den nächsten Schritt. Kann Geld kosten.
Wie du einen Schlüssel bekommst, steht unten im README des Anbieters
Terminal öffnen
Mac: Command+Leertaste drücken und Terminal tippen · Windows: PowerShell öffnen
Diesen Befehl einfügen und Enter drücken
claude mcp add postgres --env MCP_KEY_HOST=your-value --env MCP_KEY_PORT=your-value --env MCP_KEY_NAME=your-value --env MCP_KEY_USER=your-value --env MCP_KEY_PASS=your-value --env MCP_KEY_SSLMODE=your-value -- npx -y @edelciomolina/postgres-mcpErsetze „your-value“ vor dem Enter durch deinen Schlüssel
Füge den Schlüssel nur in das Feld der App ein, nie in einen Chat und schick ihn niemandem
/mcp in Claude Code eingeben
Postgres MCP sollte in der Liste als verbunden erscheinen
Ausprobieren
Nutze Postgres MCP und sag mir, was du für mich tun kannst; zeig mir dann eine Sache✓ Wenn Claude Code sagt, dass es Postgres MCP nutzt, oder ein Werkzeug von Postgres MCP in der Antwort zeigt, bist du verbunden
Menünamen am 11. Nov. 2026 mit der Hilfe von Anthropic abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen
Klappt mit Cursor, aber erst etwas vorbereiten
Du brauchst einen Schlüssel von Postgres MCP (auf der Seite des Anbieters registrieren, kann kosten) · Installiere zuerst Node.js auf deinem Computer (nur einmal)
Node.js installieren
Nur einmal; gilt für alle Server, die Node.js brauchen
Bei Postgres MCP registrieren und Schlüssel erstellen
Öffne die Seite des Anbieters, registriere dich und erstelle einen API-Schlüssel für den nächsten Schritt. Kann Geld kosten.
Wie du einen Schlüssel bekommst, steht unten im README des Anbieters
Schlüssel eintragen
In den Einstellungen von Postgres MCP ist MCP_KEY_HOST, MCP_KEY_PORT, MCP_KEY_NAME, MCP_KEY_USER, MCP_KEY_PASS, MCP_KEY_SSLMODE leer; trag deinen Schlüssel ein und speichere
Füge den Schlüssel nur in das Feld der App ein, nie in einen Chat und schick ihn niemandem
KI-Chat in Cursor im Agent-Modus öffnen
Ausprobieren
Nutze Postgres MCP und sag mir, was du für mich tun kannst; zeig mir dann eine Sache✓ Wenn Cursor sagt, dass es Postgres MCP nutzt, oder ein Werkzeug von Postgres MCP in der Antwort zeigt, bist du verbunden
Menünamen am 11. Nov. 2026 mit der Hilfe von Cursor abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen
Klappt mit VS Code, aber erst etwas vorbereiten
Du brauchst einen Schlüssel von Postgres MCP (auf der Seite des Anbieters registrieren, kann kosten) · Installiere zuerst Node.js auf deinem Computer (nur einmal)
Node.js installieren
Nur einmal; gilt für alle Server, die Node.js brauchen
Bei Postgres MCP registrieren und Schlüssel erstellen
Öffne die Seite des Anbieters, registriere dich und erstelle einen API-Schlüssel für den nächsten Schritt. Kann Geld kosten.
Wie du einen Schlüssel bekommst, steht unten im README des Anbieters
Mit diesem Button VS Code öffnen
VS Code fragt nach einer Bestätigung; klicke Install
Schlüssel eintragen
In den Einstellungen von Postgres MCP ist MCP_KEY_HOST, MCP_KEY_PORT, MCP_KEY_NAME, MCP_KEY_USER, MCP_KEY_PASS, MCP_KEY_SSLMODE leer; trag deinen Schlüssel ein und speichere
Füge den Schlüssel nur in das Feld der App ein, nie in einen Chat und schick ihn niemandem
KI-Chat in VS Code im Agent-Modus öffnen
Ausprobieren
Nutze Postgres MCP und sag mir, was du für mich tun kannst; zeig mir dann eine Sache✓ Wenn VS Code sagt, dass es Postgres MCP nutzt, oder ein Werkzeug von Postgres MCP in der Antwort zeigt, bist du verbunden
Menünamen am 11. Nov. 2026 mit der Hilfe von VS Code abgeglichen · dein Bildschirm kann je nach App-Version leicht abweichen
Andere Apps mit MCP, etwa Windsurf, Zed oder Gemini CLI, fügen Server unterschiedlich hinzu. Sieh in der App-Liste nach
JSON-Einstellungen stehen unten unter „Für Entwickler“
Für Entwickler: Terminal-Befehle und JSON-Einstellungen
Auf deinem Computer installiert
Claude Code
claude mcp add postgres --env MCP_KEY_HOST=your-value --env MCP_KEY_PORT=your-value --env MCP_KEY_NAME=your-value --env MCP_KEY_USER=your-value --env MCP_KEY_PASS=your-value --env MCP_KEY_SSLMODE=your-value -- npx -y @edelciomolina/postgres-mcpClaude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"postgres": {
"command": "npx",
"args": [
"-y",
"@edelciomolina/postgres-mcp"
],
"env": {
"MCP_KEY_HOST": "your-value",
"MCP_KEY_PORT": "your-value",
"MCP_KEY_NAME": "your-value",
"MCP_KEY_USER": "your-value",
"MCP_KEY_PASS": "your-value",
"MCP_KEY_SSLMODE": "your-value"
}
}
}
}Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"postgres": {
"command": "npx",
"args": [
"-y",
"@edelciomolina/postgres-mcp"
],
"env": {
"MCP_KEY_HOST": "your-value",
"MCP_KEY_PORT": "your-value",
"MCP_KEY_NAME": "your-value",
"MCP_KEY_USER": "your-value",
"MCP_KEY_PASS": "your-value",
"MCP_KEY_SSLMODE": "your-value"
}
}
}
}VS Code (mcp.json)
{
"servers": {
"postgres": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@edelciomolina/postgres-mcp"
],
"env": {
"MCP_KEY_HOST": "your-value",
"MCP_KEY_PORT": "your-value",
"MCP_KEY_NAME": "your-value",
"MCP_KEY_USER": "your-value",
"MCP_KEY_PASS": "your-value",
"MCP_KEY_SSLMODE": "your-value"
}
}
}
}Werte, die du selbst einträgst
MCP_KEY_HOSTenvName of the .env variable that holds the database hostMCP_KEY_PORTenvName of the .env variable that holds the database portMCP_KEY_NAMEenvName of the .env variable that holds the database nameMCP_KEY_USERenvName of the .env variable that holds the database userMCP_KEY_PASSenvName of the .env variable that holds the database passwordMCP_KEY_SSLMODEenvName of the .env variable that holds the SSL mode (e.g. require)
Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Auf einen Blick
Welche Apps ihn nutzen können
Basierend darauf, wie sich dieser Server verbindet, und auf der eigenen Doku jeder App, geprüft am 10. Nov. 2026.
Laufen auf deinem Computer in
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
Was er kann
Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.
Basischecksi
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 11. Nov. 2026
- ✓ Bestanden
Entwickler passt zum Repo
Der Registry-Name wurde mit dem GitHub-Konto edelciomolina bestätigt, dem das Repo gehört
- ✓ Bestanden
Wird noch gepflegt
Code zuletzt geändert: vor 5 Monaten
- … Noch nicht geprüft
Hat eine Lizenz
Dieses Repo haben wir noch nicht von GitHub gelesen
- – Nicht zutreffend
Endpunkt antwortet
Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet
- – Nicht zutreffend
Anmeldung mit OAuth
Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen
- … Noch nicht geprüft
Keine versteckten Anweisungen in Tool-Beschreibungen
Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen
Diskussion
Fragen, Tipps teilen oder melden, dass etwas nicht geht. Sortiert nach „hilfreich“.
Noch keine Beiträge. Stell die erste Frage oder teile einen Tipp.
Beiträge hier stammen von Nutzern, nicht vom PopNx-Team.
Nutzerbewertungen
Noch keine Bewertungen
Im Vergleich mit anderen in Datenbanken & Datensätzei
- Mehr Sterne als 90 % der anderen 1161 Server in dieser Kategorie
- Neuer in der Registry veröffentlicht als 14 % der anderen 1161 Server in dieser Kategorie
- Basischecks gleich gut wie oder besser als bei 100 % der anderen 1161 Server in dieser Kategorie
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Häufige Fragen
Ist Postgres MCP sicher?
Er hat 2 von 2 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Welche Schlüssel oder Codes braucht er?
Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.
Läuft er auf meinem Computer oder in der Cloud?
Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).
Wird er noch gepflegt?
Das GitHub-Repo wurde zuletzt vor 5 Monaten geändert, und die neueste Version (1.7.0) kam vor 5 Monaten in die Registry.
Welche Apps können ihn nutzen?
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Node.js auf deinem Computer.
Was kann ich stattdessen nutzen?
In derselben Kategorie: Dbx, MCP Toolbox for Databases, MCP Toolbox for Databases
Alternativen
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
MCP Toolbox for Databases
MCP Toolbox for Databases enables your agent to connect to your database.
MCP Toolbox for Databases
MCP Toolbox for Databases enables your agent to connect to your database.
README vom Entwickler
README öffnen
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
English | 🌐 Português
Postgres MCP 🔌 Native MCP server for PostgreSQL - reads credentials from .env at runtime with flexible key mapping, configurable tool selection, and read-only mode by default .
✨ What it does
Most LLMs interact with databases by guessing - assuming table names, inventing column names, and writing queries that may fail or expose sensitive data. Postgres MCP solves this by giving the LLM a structured, safe interface to actually understand the database before touching it.
Built with @modelcontextprotocol/sdk and pg, it provides:
- 🧠 Semantic knowledge graph - the LLM gets a complete map of schemas, tables, columns, foreign keys, inferred relations, risk levels, and business domains - built from the real schema, not invented
- 🛡️ Read-only by default - no writes, no DDL, no arbitrary SQL unless you explicitly opt in;
pg_classify_query_risklets the LLM check a query's safety before running it - 🔐 Runtime credential resolution - credentials are read from
.envat startup; nothing sensitive lives inmcp.json - 🎯 Explicit tool selection - every tool is opt-in via
tool=args, so the LLM only sees what you choose to expose
📋 Requirements
- ⚙️ Node.js >= 18
- 📄 A
.envfile with database credentials (anywhere in the project tree - see .env Discovery)
🚀 Installation
There are two ways to use this package. Choose the one that best fits your workflow.
Option 1 - No installation (via npx, recommended for quick start)
No installation needed. npx downloads and runs the package on demand. Add -y as the first argument to skip the confirmation prompt.
{
"servers": { "Postgres Tools": { "type": "stdio", "command": "npx", "args": [ "-y", "@edelciomolina/postgres-mcp" ], "env": { "MCP_KEY_HOST": "DB_HOST", "MCP_KEY_PORT": "DB_PORT", "MCP_KEY_NAME": "DB_NAME", "MCP_KEY_SSLMODE": "DB_SSLMODE", "MCP_KEY_USER": "DB_USER", "MCP_KEY_PASS": "DB_PASS" } } } }
This starts the server with the default read-only tool set - no tool= arguments needed. To enable write-capable tools, see Write-capable tools.
💡 Using Supabase, Neon, Railway or another platform that only provides a connection string? Use
MCP_KEY_URLpointing toDATABASE_URL(or whatever variable name the platform uses). The server will prioritize the URL and ignore the individual variables. See Connection via URL.
Option 2 - Install via VS Code (MCP extension marketplace)
VS Code supports discovering and installing MCP servers directly in the editor, without using the terminal.
- Open the Command Palette ( Cmd + Shift + P on Mac / Ctrl + Shift + P on Windows/Linux)
- Run `MCP: Add Server`
- Choose "Browse MCP Servers" (or "From registry", depending on your VS Code version)
- Search for `postgres-mcp` or `edelciomolina`
- Select Postgres MCP and follow the instructions - VS Code will add the entry to your
mcp.jsonautomatically
💡 You can also open the MCP Servers panel via Copilot chat icon → Manage MCP Servers to browse, enable, or disable servers at any time.
After installing, edit the generated entry in .vscode/mcp.json to add your tool= arguments and env key mappings as shown in the Usage section below.
🚀 Usage in VS Code (mcp.json)
Read-only (default - no `tool=` arguments needed):
{
"servers": { "Postgres Tools": { "type": "stdio", "command": "npx", "args": ["@edelciomolina/postgres-mcp"], "env": { "MCP_KEY_HOST": "DB_HOST", "MCP_KEY_PORT": "DB_PORT", "MCP_KEY_NAME": "DB_NAME", "MCP_KEY_SSLMODE": "DB_SSLMODE", "MCP_KEY_USER": "DB_USER", "MCP_KEY_PASS": "DB_PASS" } } } }
With write tools (explicit opt-in required):
{
"servers": { "Postgres Tools": { "type": "stdio", "command": "npx", "args": [ "@edelciomolina/postgres-mcp", "tool=pg_manage_schema", "tool=pg_manage_indexes" ], "env": { "POSTGRES_MCP_ALLOW_WRITE": "true", "MCP_KEY_HOST": "DB_HOST", "MCP_KEY_PORT": "DB_PORT", "MCP_KEY_NAME": "DB_NAME", "MCP_KEY_SSLMODE": "DB_SSLMODE", "MCP_KEY_USER": "DB_USER", "MCP_KEY_PASS": "DB_PASS" } } } }
⚠️ Write-capable tools require
POSTGRES_MCP_ALLOW_WRITE=trueinenv. Without it, the server exits at startup.
The corresponding .env file at the root of your project:
DB_HOST=db.your-project.supabase.co
DB_PORT=5432 DB_NAME=postgres DB_SSLMODE=require DB_USER=readonly_user DB_PASS=your_password
⚙️ How mcp.json configuration works
🗝️ env - credential key mapping
The env block does not contain the actual credentials. It maps each MCP_KEY_* to the variable name in your .env file.
Key in env | Points to .env variable | Example value |
|---|---|---|
MCP_KEY_URL | DATABASE_URL | postgresql://user:pass@host:5432/db?sslmode=require |
MCP_KEY_HOST | DB_HOST | db.example.supabase.co |
MCP_KEY_PORT | DB_PORT | 5432 |
MCP_KEY_NAME | DB_NAME | postgres |
MCP_KEY_SSLMODE | DB_SSLMODE | require |
MCP_KEY_USER | DB_USER | readonly_user |
MCP_KEY_PASS | DB_PASS | secret |
Priority: when
MCP_KEY_URL(orDATABASE_URL) is present, the server uses the URL directly and ignores the individual credential keys.
This indirection lets you use any variable name in your .env - useful when sharing a .env across multiple services with different naming conventions.
🔧 args - tool selection via tool= prefix
Each enabled MCP tool is declared as a separate argument in the format tool= :
"args": [
"-y", "@edelciomolina/postgres-mcp", "tool=pg_manage_schema", "tool=pg_manage_indexes" ]
This makes the tool list explicit and auditable directly in mcp.json - no hidden configuration files. 🔍
🔗 Connection via URL (DATABASE_URL)
In addition to individual credentials, you can provide a full connection string - the standard format on platforms like Supabase, Neon, and Railway.
`.env`:
DATABASE_URL=postgresql://user:password@host:5432/database?sslmode=require
`mcp.json`:
{
"servers": { "Postgres Tools": { "type": "stdio", "command": "npx", "args": ["-y", "@edelciomolina/postgres-mcp"], "env": { "MCP_KEY_URL": "DATABASE_URL" } } } }
The variable mapped by MCP_KEY_URL has priority over the other keys (MCP_KEY_HOST, MCP_KEY_PORT, etc.). If the URL is present, the other variables are ignored.
If the platform uses a different name (e.g. DB_URL), just adjust the mapping:
"MCP_KEY_URL": "DB_URL"
🛡️ Why read-only is the default
If you omit all tool= arguments, the server starts with a curated read-only set - all tools that can retrieve, analyze, or explain data, but nothing that can modify it.
✅ Included in defaults (read-only):
pg_execute_query pg_manage_query pg_inspect_schema
pg_get_setup_instructions pg_analyze_database pg_monitor_database pg_debug_database pg_inspect_database_graph pg_describe_table_semantics pg_find_related_tables pg_classify_query_risk
💡
pg_execute_queryrejectsINSERT,UPDATE,DELETE, DDL,ANALYZE,VACUUM,EXPLAIN ANALYZEand other write/maintenance commands before the database is queried.
💡
pg_inspect_schemaprovides read-only schema introspection (get_info,get_enums). For DDL operations, usepg_manage_schemawith explicit opt-in.
⚠️ Excluded from defaults - require `tool=` argument AND `POSTGRES_MCP_ALLOW_WRITE=true`:
| Tool | Operations |
|---|---|
pg_manage_schema | CREATE TABLE, ALTER TABLE, CREATE TYPE |
pg_manage_indexes | CREATE INDEX, DROP INDEX, REINDEX |
pg_manage_constraints | ADD CONSTRAINT, DROP CONSTRAINT |
pg_manage_functions | CREATE FUNCTION, DROP FUNCTION |
pg_manage_triggers | CREATE TRIGGER, DROP TRIGGER, enable/disable |
pg_manage_rls | ENABLE/DISABLE RLS, CREATE/ALTER/DROP POLICY |
pg_manage_users | CREATE/DROP/ALTER USER, GRANT, REVOKE |
pg_execute_mutation | INSERT / UPDATE / DELETE / UPSERT |
pg_execute_sql | Arbitrary SQL with transaction support |
📍 .env file discovery
The server resolves the .env file in this order:
- `env-file= ` argument - explicit path relative to
cwd; takes priority over everything - Upward search - starting from
cwd, searches each parent directory until a.envis found or the filesystem root is reached
If no .env is found, the server exits with a clear error message.
Monorepos and subfolders
When VS Code starts the MCP process, cwd is typically the workspace root. If your .env is in a subfolder (e.g. functions/.env), use env-file= to point to it explicitly:
{
"servers": { "Postgres Tools": { "type": "stdio", "command": "npx", "args": [ "-y", "@edelciomolina/postgres-mcp", "env-file=functions/.env" ], "env": { "MCP_KEY_HOST": "DB_HOST", "MCP_KEY_PORT": "DB_PORT", "MCP_KEY_NAME": "DB_NAME", "MCP_KEY_SSLMODE": "DB_SSLMODE", "MCP_KEY_USER": "DB_USER", "MCP_KEY_PASS": "DB_PASS" } } } }
💡 The upward search behavior handles the common case automatically. Use
env-file=when you need explicit control (CI, monorepos, Docker bind-mounts).
🧰 Available tools
Read-only (enabled by default)
| Tool | Description |
|---|---|
pg_execute_query | SELECT / COUNT / EXISTS with write and multi-statement guards |
pg_manage_query | EXPLAIN plans, slow query analysis, pg_stat_statements |
pg_inspect_schema | Schema info and ENUM types (read-only introspection) |
pg_get_setup_instructions | Setup instructions per platform |
pg_analyze_database | Performance, configuration, and storage analysis |
pg_monitor_database | Real-time monitoring of connections, queries, locks, and replication |
| pg_debug_database | Diagnose connections, locks, performance, a