MCP-Mirror

PostgreSQL MCP Server

Community MCP-Mirror
Updated

MCP server for PostgreSQL database management

PostgreSQL MCP Server

A Model Context Protocol (MCP) server that provides PostgreSQL database management capabilities. This server assists with analyzing existing PostgreSQL setups, providing implementation guidance, and debugging database issues.

Features

1. Database Analysis (analyze_database)

Analyzes PostgreSQL database configuration and performance metrics:

  • Configuration analysis
  • Performance metrics
  • Security assessment
  • Recommendations for optimization
// Example usage
{
  "connectionString": "postgresql://user:password@localhost:5432/dbname",
  "analysisType": "performance" // Optional: "configuration" | "performance" | "security"
}

2. Setup Instructions (get_setup_instructions)

Provides step-by-step PostgreSQL installation and configuration guidance:

  • Platform-specific installation steps
  • Configuration recommendations
  • Security best practices
  • Post-installation tasks
// Example usage
{
  "platform": "linux", // Required: "linux" | "macos" | "windows"
  "version": "15", // Optional: PostgreSQL version
  "useCase": "production" // Optional: "development" | "production"
}

3. Database Debugging (debug_database)

Debug common PostgreSQL issues:

  • Connection problems
  • Performance bottlenecks
  • Lock conflicts
  • Replication status
// Example usage
{
  "connectionString": "postgresql://user:password@localhost:5432/dbname",
  "issue": "performance", // Required: "connection" | "performance" | "locks" | "replication"
  "logLevel": "debug" // Optional: "info" | "debug" | "trace"
}

Prerequisites

  • Node.js >= 18.0.0
  • PostgreSQL server (for target database operations)
  • Network access to target PostgreSQL instances

Installation

  1. Clone the repository
  2. Install dependencies:
    npm install
    
  3. Build the server:
    npm run build
    
  4. Add to MCP settings file:
    {
      "mcpServers": {
        "postgresql-mcp": {
          "command": "node",
          "args": ["/path/to/postgresql-mcp-server/build/index.js"],
          "disabled": false,
          "alwaysAllow": []
        }
      }
    }
    

Development

  • npm run dev - Start development server with hot reload
  • npm run lint - Run ESLint
  • npm test - Run tests

Security Considerations

  1. Connection Security

    • Uses connection pooling
    • Implements connection timeouts
    • Validates connection strings
    • Supports SSL/TLS connections
  2. Query Safety

    • Validates SQL queries
    • Prevents dangerous operations
    • Implements query timeouts
    • Logs all operations
  3. Authentication

    • Supports multiple authentication methods
    • Implements role-based access control
    • Enforces password policies
    • Manages connection credentials securely

Best Practices

  1. Always use secure connection strings with proper credentials
  2. Follow production security recommendations for sensitive environments
  3. Regularly monitor and analyze database performance
  4. Keep PostgreSQL version up to date
  5. Implement proper backup strategies
  6. Use connection pooling for better resource management
  7. Implement proper error handling and logging
  8. Regular security audits and updates

Error Handling

The server implements comprehensive error handling:

  • Connection failures
  • Query timeouts
  • Authentication errors
  • Permission issues
  • Resource constraints

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to the branch
  5. Create a Pull Request

License

This project is licensed under the AGPLv3 License - see LICENSE file for details.

MCP Server · Populars

MCP Server · New

    superglue-ai

    superglue

    superglue integrates & orchestrates APIs from natural language. Agents use it to build deterministic workflows across apps, APIs and databases. Humans use it to generate insights, build automations and manage data.

    Community superglue-ai
    superglue-ai

    docs

    superglue integrates & orchestrates APIs from natural language. Agents use it to build deterministic workflows across apps, APIs and databases. Humans use it to generate insights, build automations and manage data.

    Community superglue-ai
    KemingHe

    Python Dependency Manager Companion MCP Server

    Self-updating MCP server to cross-reference latest official pip, poetry, uv, and conda docs

    Community KemingHe
    apache

    ECharts MCP

    Apache ECharts MCP Server

    Community apache
    formulahendry

    Spec-Driven Development MCP Server

    Spec-Driven Development MCP Server, no just Vibe Coding

    Community formulahendry