PostgreSQL MCP Server
Provides read-only access to PostgreSQL databases, allowing execution of SELECT/WITH queries and schema exploration (listing schemas, tables, columns).
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@PostgreSQL MCP ServerList all tables in the public schema."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
db-mcp (PostgreSQL)
MCP server in JavaScript: PostgreSQL over stdio, read-only tools (SELECT / WITH) plus schema helpers.
Repo layout
Path | What |
| MCP server (stdio) |
|
|
| Optional Next.js UI + Express API + Gemini — spawns this MCP per request ( |
Root package.json deps: @modelcontextprotocol/sdk, pg, zod, dotenv.
Related MCP server: Enterprise PostgreSQL MCP Server
Requirements
Node.js 18+
PostgreSQL and a
DATABASE_URL
Install (MCP server)
cd db-mcp
npm installCopy .env.example → .env in repo root (next to root package.json). Set DATABASE_URL. Do not commit .env.
src/index.js loads that .env via dotenv using path repo root (derived from import.meta.url), so Cursor can run node …/src/index.js with any cwd. Vars already in the real environment are not overwritten.
Alternatively: export DATABASE_URL in the shell, or set env in Cursor MCP config (those win over .env).
Configuration (MCP)
Variable | Required | Description |
| Yes | URI, e.g. |
| No | Statement timeout in ms (default |
Connection startup uses libpq -c default_transaction_read_only=on and -c statement_timeout=… (see src/pool.js). Prefer a read-only DB role in production.
Run MCP (stdio)
npm startPowerShell (if not using .env):
$env:DATABASE_URL = "postgresql://USER:PASSWORD@HOST:5432/DBNAME"
npm startCursor / Claude Desktop
Point command + args at src/index.js. Pass DATABASE_URL in env if you do not rely on root .env.
Cursor (mcp.json):
{
"mcpServers": {
"postgres": {
"command": "node",
"args": ["C:/Users/YourUser/Desktop/db-mcp/src/index.js"],
"env": {
"DATABASE_URL": "postgresql://USER:PASSWORD@localhost:5432/mydb"
}
}
}
}Use a real absolute path. Reload MCP after edits.
How to test
Method | What you do |
Cursor | Agent (or chat with tools). Natural language, e.g. “List |
|
|
Playground | Browser UI: Gemini drives same MCP over stdio. |
If tools never show: MCP disconnected in UI, or chat mode has no tool use.
Tools
Tool | Purpose |
| Non-system schemas |
| Tables/views in a schema (default |
| Columns for a table or view |
| Single |
pg_query: no multi-statement (; only at end); must start with SELECT or WITH.
Security
DATABASE_URL= secret; least-privilege role.Read-only intent; DB should still enforce if
default_transaction_read_onlybypassed.LLM + SQL = cost + data exposure risk; tight timeouts, read replica when possible.
Playground = local dev only; do not expose API without auth.
License
MIT
This 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
- FlicenseAqualityDmaintenanceEnables AI assistants to interact with PostgreSQL databases using natural language queries, providing secure read-only access to database schemas and SQL translation capabilities.69
- -license-quality-maintenanceEnables secure read-only interactions with PostgreSQL databases through natural language. Provides database inspection, table listing, and SQL query execution with built-in security validation.
- Alicense-qualityDmaintenanceProvides read-only access to PostgreSQL databases, enabling users to list tables, view table structures and statistics, and execute SELECT queries safely through natural language.169MIT
- Alicense-qualityBmaintenanceEnables secure read-only access to PostgreSQL databases, allowing users to list tables, query schemas, execute SELECT statements, and inspect table structures through natural language interactions.7644MIT
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/harshit-wadhwa/db-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server