Cover image
Try Now
2025-04-10

3 years

Works with Finder

1

Github Watches

9

Github Forks

10

Github Stars

PostgreSQL MCP Server

smithery badge

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.

PostgreSQL Server MCP server

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

Installing via Smithery

To install PostgreSQL MCP Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @nahmanmate/postgresql-mcp-server --client claude

Manual 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.

相关推荐

  • NiKole Maxwell
  • I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • Khalid kalib
  • Write professional emails

  • https://tovuti.be
  • Oede knorrepot die vasthoudt an de goeie ouwe tied van 't boerenleven

  • Gil kaminski
  • Make sure you are post-ready before you post on social media

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • momi
  • Provides initial medical assessments and advice.

  • Yasir Eryilmaz
  • AI scriptwriting assistant for short, engaging video content.

  • Daren White
  • A supportive coach for mastering all Spanish tenses.

  • WILLIAM JOEL FOTEPING
  • Friendly music guide for 60s-2000s songs, with links to listen online.

  • huahuayu
  • A unified API gateway for integrating multiple etherscan-like blockchain explorer APIs with Model Context Protocol (MCP) support for AI assistants.

  • deemkeen
  • control your mbot2 with a power combo: mqtt+mcp+llm

  • zhaoyunxing92
  • 本项目是一个钉钉MCP(Message Connector Protocol)服务,提供了与钉钉企业应用交互的API接口。项目基于Go语言开发,支持员工信息查询和消息发送等功能。

  • ShrimpingIt
  • Micropython I2C-based manipulation of the MCP series GPIO expander, derived from Adafruit_MCP230xx

  • justmywyw
  • Short and sweet example MCP server / client implementation for Tools, Resources and Prompts.

    Reviews

    5 (1)
    Avatar
    user_kPIc5Pzy
    2025-04-16

    I recently started using the postgresql-mcp-server by nahmanmate, and I'm thoroughly impressed. This server simplifies managing PostgreSQL databases with MCP applications remarkably well. The setup process was straightforward, thanks to the clear documentation provided. The integration with my existing workflow was seamless, enhancing both performance and efficiency. For anyone looking to streamline their database management tasks, I highly recommend checking out postgresql-mcp-server. You can find more information and download it from the project's GitHub page.