PostgreSQL MCP Server
PostgreSQL MCP servers enable AI models to interact with PostgreSQL databases, providing capabilities for structured data operations, SQL queries, transaction management, and advanced data indexing.
Overview
The MCP Postgres Server bridges AI and databases by letting language models (LLMs) work directly with PostgreSQL. It's part of the Model Context Protocol (MCP) system, providing a safe and standard way to connect AI with data.
Created by:
Developed by Anton Orlov
Key Features
Database Structure Inspection
View and understand database schemas, tables, and their relationships
Natural Language to SQL
Convert natural language queries into SQL commands seamlessly
Efficient Query Handling
Execute and manage query results with prepared statements support
Smart Data Formatting
Format and present data in readable, AI-friendly formats
Available Tools
Quick Reference
| Tool | Purpose | Category |
|---|---|---|
connect_db | Establish database connection | Connection |
query | Execute SELECT queries | Read |
execute | Execute INSERT/UPDATE/DELETE | Write |
list_schemas | List all database schemas | Schema |
list_tables | List tables in a schema | Schema |
describe_table | Get table structure details | Schema |
Detailed Usage
connect_db▶
Warning:
only use when requested or if other commands fail
Establish connection to PostgreSQL database using provided credentials.
use_mcp_tool({
server_name: "postgres",
tool_name: "connect_db",
arguments: {
host: "localhost",
port: 5432,
user: "your_user",
password: "your_password",
database: "your_database"
}
});
query▶
Execute SELECT queries with optional prepared statement parameters. Supports both PostgreSQL-style ($1, $2) and MySQL-style (?) parameter placeholders.
use_mcp_tool({
server_name: "postgres",
tool_name: "query",
arguments: {
sql: "SELECT * FROM users WHERE id = $1",
params: [1]
}
});
execute▶
Execute INSERT, UPDATE, or DELETE queries with optional prepared statement parameters. Supports both PostgreSQL-style ($1, $2) and MySQL-style (?) parameter placeholders.
use_mcp_tool({
server_name: "postgres",
tool_name: "execute",
arguments: {
sql: "INSERT INTO users (name, email) VALUES ($1, $2)",
params: ["John Doe", "[email protected]"]
}
});
list_schemas▶
List all schemas in the database
use_mcp_tool({
server_name: "postgres",
tool_name: "list_schemas",
arguments: {}
});
list_tables▶
List tables in the connected database. Accepts an optional schema parameter (defaults to 'public').
// List tables in the 'public' schema (default)
use_mcp_tool({
server_name: "postgres",
tool_name: "list_tables",
arguments: {}
});
// List tables in a specific schema
use_mcp_tool({
server_name: "postgres",
tool_name: "list_tables",
arguments: {
schema: "my_schema"
}
});
describe_table▶
Get the structure of a specific table. Accepts an optional schema parameter (defaults to 'public').
// Describe a table in the 'public' schema (default)
use_mcp_tool({
server_name: "postgres",
tool_name: "describe_table",
arguments: {
table: "users"
}
});
// Describe a table in a specific schema
use_mcp_tool({
server_name: "postgres",
tool_name: "describe_table",
arguments: {
table: "users",
schema: "my_schema"
}
});
Installation
{
"mcpServers": {
"postgres": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcp-postgres-server"
],
"env": {
"PG_HOST": "your_host",
"PG_PORT": "5432",
"PG_USER": "your_user",
"PG_PASSWORD": "your_password",
"PG_DATABASE": "your_database"
}
}
}
}
Sources
Related Articles
Browserless MCP Server
Browserless MCP server provides AI-controlled cloud and self-hosted headless browsers with smart scraping, crawling, PDF generation, and anti-bot protection for Puppeteer and Playwright.
GitHub Actions MCP Server
Manage CI/CD workflows with GitHub Actions through your AI assistant - trigger runs, check status, and debug failures.
Slack MCP Server
Slack MCP server provides AI assistants with full Slack workspace integration including channel management, messaging, threads, reactions, and user presence.