{"library":"postgres-mcp","title":"PostgreSQL Multi-Cluster Performance Tool (postgres-mcp)","description":"PostgreSQL Tuning and Analysis Tool (Multi-Cluster Performance), currently at version 0.3.0. It's a command-line utility and a Python library designed to help analyze and optimize PostgreSQL database performance by providing recommendations and insights. Its release cadence is irregular, typical for a community-driven tool in its early stages.","language":"python","status":"active","last_verified":"Thu Apr 16","install":{"commands":["pip install postgres-mcp"],"cli":{"name":"postgres-mcp","version":""}},"imports":["from postgres_mcp.connections import ConnectionManager","from postgres_mcp.recommender import Recommender","from postgres_mcp.analysis import Analyzer"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import os\nfrom postgres_mcp.connections import ConnectionManager\nfrom postgres_mcp.recommender import Recommender\n\n# Ensure these environment variables are set or provide default values\nDB_HOST = os.environ.get('PG_MCP_DB_HOST', 'localhost')\nDB_PORT = int(os.environ.get('PG_MCP_DB_PORT', 5432))\nDB_USER = os.environ.get('PG_MCP_DB_USER', 'postgres')\nDB_PASS = os.environ.get('PG_MCP_DB_PASS', '') # Consider using an actual password or no password if allowed\nDB_NAME = os.environ.get('PG_MCP_DB_NAME', 'postgres')\n\nif not DB_PASS and DB_USER != 'postgres': # Simple check for non-default user requiring password\n    print(\"Warning: DB_PASS environment variable not set. Connection might fail if user requires a password.\")\n\ntry:\n    # Initialize connection manager\n    conn_manager = ConnectionManager(\n        host=DB_HOST,\n        port=DB_PORT,\n        user=DB_USER,\n        password=DB_PASS,\n        dbname=DB_NAME\n    )\n    \n    # Initialize the recommender with the connection manager\n    recommender = Recommender(conn_manager)\n    \n    # Get recommendations\n    print(f\"Fetching recommendations for {DB_USER}@{DB_HOST}:{DB_PORT}/{DB_NAME}...\")\n    recommendations = recommender.get_recommendations()\n    \n    print(\"\\nPostgreSQL Recommendations:\")\n    if recommendations:\n        for category, recs in recommendations.items():\n            print(f\"[{category.upper()}]\")\n            for key, value in recs.items():\n                print(f\"  - {key}: {value}\")\n    else:\n        print(\"No specific recommendations found (this might be normal for a healthy DB or small workload).\")\n\nexcept Exception as e:\n    print(f\"\\nAn error occurred during recommendation generation: {e}\")\n    print(\"Please ensure:\")\n    print(\"1. Your PostgreSQL server is running and accessible from this machine.\")\n    print(\"2. The provided database connection details (host, port, user, password, dbname) are correct.\")\n    print(\"3. The database user has sufficient permissions to query system catalog views (e.g., pg_stat_activity, pg_settings).\")\n","lang":"python","description":"This quickstart demonstrates how to programmatically use `postgres-mcp` to connect to a PostgreSQL database and fetch performance recommendations using the `ConnectionManager` and `Recommender` classes. It requires setting database connection details via environment variables or hardcoding them (not recommended for production).","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}