Skip to main content
Glama
versatilecoder

PostgreSQL MCP Server

PostgreSQL MCP Server

A comprehensive PostgreSQL server for the Model Context Protocol (MCP) that provides database access through MCP tools and resources.

Features

  • Database Operations: Execute SQL queries (SELECT, INSERT, UPDATE, DELETE)

  • Schema Management: Get table schemas, list tables, create tables

  • Database Statistics: Get database stats and connection information

  • Connection Management: Test connections and monitor pool status

  • MCP Resources: Access database schema and connection status as resources

  • Environment Configuration: Configure via environment variables

  • npx Support: Can be run via npx for easy integration with MCP clients

Related MCP server: sqlserver-mcp-colossal

Installation

Local Installation

npm install

Global Installation (for npx usage)

npm install -g mcp-server-postgres
npx mcp-server-postgres

Usage

Running with npx

The server can be run directly with npx, making it easy to integrate with MCP clients:

npx mcp-server-postgres

MCP Client Configuration

For Local Development

Add this to your MCP client configuration (e.g., Claude Desktop) for local development:

{
  "mcpServers": {
    "postgres": {
      "command": "node",
      "args": ["c:\\Users\\CascadeProjects\\mcp-postgres-server\\bin\\mcp-server-postgres.js"],
      "env": {
        "POSTGRES_USER": "pguser",
        "POSTGRES_HOST": "localhost",
        "POSTGRES_DB": "postgres",
        "POSTGRES_PASSWORD": "admin",
        "POSTGRES_PORT": "5432",
        "POSTGRES_SSL": "false"
      }
    }
  }
}

For Published Package (npx)

If the package is published to npm registry:

{
  "mcpServers": {
    "postgres": {
      "command": "npx",
      "args": ["mcp-server-postgres"],
      "env": {
        "POSTGRES_USER": "pguser",
        "POSTGRES_HOST": "localhost",
        "POSTGRES_DB": "postgres",
        "POSTGRES_PASSWORD": "admin",
        "POSTGRES_PORT": "5432",
        "POSTGRES_SSL": "false"
      }
    }
  }
}

Environment Variables

Configure your PostgreSQL connection using these environment variables:

  • POSTGRES_USER - Database username (default: postgres)

  • POSTGRES_HOST - Database host (default: localhost)

  • POSTGRES_DB - Database name (default: postgres)

  • POSTGRES_PASSWORD - Database password

  • POSTGRES_PORT - Database port (default: 5432)

  • POSTGRES_SSL - Enable SSL (default: false)

Available Tools

  • execute_query - Execute SQL queries with optional parameters

  • get_table_schema - Get detailed schema information for tables

  • list_tables - List all tables in the database

  • get_database_stats - Get database statistics and metadata

  • create_table - Create new tables with columns and constraints

  • test_connection - Test database connection and get status

Available Resources

  • postgres://schema/all - Complete database schema information

  • postgres://status - Current connection status and pool information

Testing

Run the test scripts to verify functionality:

npm test
npm run test-postgres

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    F
    maintenance
    A production-ready MCP server that transforms natural language into safe, executable SQL queries with multi-database support and intelligent schema analysis.
    1
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    A comprehensive MCP server for SQL Server database operations, enabling CRUD operations, schema exploration, and stored procedure execution through natural language.
    6 npm
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    MCP server providing a single query tool to execute SQL against GetDot Database, enabling schema discovery, data loading, and querying via natural language.
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    An MCP server that provides SQL generation, validation, transpilation, and schema introspection across 10 SQL dialects, using a property graph schema and phase-locked reasoning to convert natural language to accurate SQL.
    2
    MIT