🔌

PostgreSQL MCP

Query and manage PostgreSQL databases directly from Claude

community Repository January 12, 2025
npx @community/mcp-postgres

The PostgreSQL MCP server enables Claude to interact with PostgreSQL databases for querying, schema inspection, and data management.

Features

  • Query Execution: Run SELECT, INSERT, UPDATE, DELETE queries
  • Schema Inspection: View tables, columns, indexes, and relationships
  • Transaction Support: Execute queries within transactions
  • Query Explanation: Analyze query performance with EXPLAIN

Installation

npx @community/mcp-postgres

Configuration

{
  "mcpServers": {
    "postgres": {
      "command": "npx",
      "args": ["@community/mcp-postgres"],
      "env": {
        "DATABASE_URL": "postgresql://user:pass@localhost:5432/dbname"
      }
    }
  }
}

Available Tools

query

Execute a SQL query.

{
  "sql": "SELECT * FROM users WHERE active = true LIMIT 10"
}

describe_table

Get table schema information.

{
  "table": "users"
}

list_tables

List all tables in the database.

{
  "schema": "public"
}

explain

Analyze query performance.

{
  "sql": "SELECT * FROM orders JOIN users ON orders.user_id = users.id",
  "analyze": true
}

Security Considerations

  • Use read-only database users when possible
  • Never expose production credentials
  • Consider using connection pooling
  • Set appropriate query timeouts

Example Workflows

Data Exploration

-- List tables
SELECT table_name FROM information_schema.tables WHERE table_schema = 'public';

-- Describe table
\d users

-- Sample data
SELECT * FROM users LIMIT 5;

Performance Analysis

EXPLAIN ANALYZE SELECT * FROM orders WHERE created_at > '2025-01-01';