PostgreSQL MCP Server
The PostgreSQL MCP Server assists with PostgreSQL database management through three main functions:
Database Analysis: Analyze database configuration, performance, and security with optimization recommendations.
Setup Instructions: Provide platform-specific installation steps for Linux, macOS, and Windows, along with configuration and security best practices.
Database Debugging: Troubleshoot common issues like connection problems, performance bottlenecks, lock conflicts, and replication status.
Offers platform-specific PostgreSQL installation and configuration guidance for Linux systems
Offers platform-specific PostgreSQL installation and configuration guidance for macOS systems
Provides PostgreSQL database management capabilities including analysis, setup instructions, and debugging for PostgreSQL database instances
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@PostgreSQL MCP Server analyze performance for my production database"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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"
}Related MCP server: Postgres MCP Pro
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 claudeManual Installation
Clone the repository
Install dependencies:
npm installBuild the server:
npm run buildAdd 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 reloadnpm run lint- Run ESLintnpm test- Run tests
Security Considerations
Connection Security
Uses connection pooling
Implements connection timeouts
Validates connection strings
Supports SSL/TLS connections
Query Safety
Validates SQL queries
Prevents dangerous operations
Implements query timeouts
Logs all operations
Authentication
Supports multiple authentication methods
Implements role-based access control
Enforces password policies
Manages connection credentials securely
Best Practices
Always use secure connection strings with proper credentials
Follow production security recommendations for sensitive environments
Regularly monitor and analyze database performance
Keep PostgreSQL version up to date
Implement proper backup strategies
Use connection pooling for better resource management
Implement proper error handling and logging
Regular security audits and updates
Error Handling
The server implements comprehensive error handling:
Connection failures
Query timeouts
Authentication errors
Permission issues
Resource constraints
Running evals and tests
The evals package loads an mcp client that then runs the index.ts file, so there is no need to rebuild between tests. You can see the full documentation here.
OPENAI_API_KEY=your-key npx mcp-eval src/evals/evals.ts src/index.tsContributing
Fork the repository
Create a feature branch
Commit your changes
Push to the branch
Create a Pull Request
License
This project is licensed under the AGPLv3 License - see LICENSE file for details.
Available Tools
3 toolsanalyze_databaseC
Analyze PostgreSQL database configuration and performance
Inputs: connectionString (required), analysisType.
debug_databaseC
Debug common PostgreSQL issues
Inputs: connectionString (required), issue (required), logLevel.
get_setup_instructionsB
Get step-by-step PostgreSQL setup instructions
Inputs: platform (required), version, useCase.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: analyze_database focuses on configuration and performance analysis, debug_database targets issue troubleshooting, and get_setup_instructions provides installation guidance. There is no overlap in functionality, making it easy for an agent to select the appropriate tool without confusion.
All tool names follow a consistent verb_noun pattern (analyze_database, debug_database, get_setup_instructions), using snake_case throughout. The naming is predictable and readable, with no deviations or mixed conventions.
With only 3 tools, the server feels thin for a PostgreSQL domain, which typically involves operations like querying, inserting, updating, or managing tables. While the tools cover analysis, debugging, and setup, the lack of core database interaction tools suggests an incomplete surface for typical agent workflows.
The tool set is severely incomplete for a PostgreSQL server, as it lacks basic CRUD operations (e.g., execute_query, create_table, insert_data) and management functions (e.g., list_tables, backup_database). This will cause significant agent failures when attempting to interact with the database beyond setup and diagnostics.
Maintenance
Related MCP Connectors
Comprehensive PostgreSQL documentation and best practices, including ecosystem tools
Hosted MCP server for PostgreSQL diagnostics: slow queries, missing indexes, connection pressure.
Hosted PostgreSQL MCP server for Claude, ChatGPT and Cursor, with each action switched per account.
Query PostgreSQL databases in plain English — LLM-generated, safety-validated SQL.
Related MCP Servers
- AlicenseAqualityBmaintenanceEnables comprehensive PostgreSQL database monitoring, analysis, and management through natural language queries. Provides performance insights, bloat analysis, vacuum monitoring, and intelligent maintenance recommendations across PostgreSQL versions 12-17.38164MIT
- AlicenseBqualityDmaintenanceEnables comprehensive PostgreSQL database management including index tuning, query plan analysis, health monitoring, schema-aware SQL generation, and safe SQL execution with configurable access control for both development and production environments.9MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to manage, monitor, and optimize PostgreSQL databases with over 200 specialized tools for operations, security, performance tuning, and diagnostics.32 npm12MIT
- AlicenseAqualityDmaintenanceProvides PostgreSQL database management and analysis via MCP, enabling schema exploration, query execution, performance monitoring, and database health checks.3625 npmMIT