local_pgsql

by z-waterking

264 downloads Not rated yet
GitHub

About

localpgsql is a database analytics and query automation toolkit that provides structured data access for analysis, reporting, and AI-augmented workflows. It is designed for developers and data analysts who need to explore PostgreSQL databases, run parameterized SQL queries, and…

Explore

- List all tables and get their schemas
- Preview table contents with data sampling
- Execute parameterized SQL queries
- Compute numerical summaries and correlation matrices
- Perform group-by aggregations with multiple functions
- Run temporal aggregation and anomaly detection

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name local_pgsql
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

tables = mcp.call_tool("list_tables")
stats = mcp.call_tool("get_summary_statistics", {"table_name": "sales"})

- Schema Exploration
- List all tables (list_tables)
- Get table schema (get_table_schema)
- Data Sampling
- Preview table contents (get_table_sample)
- Custom Query Execution
- Run parameterized SQL (run_query)
- Statistical Analysis
- Numerical summaries (get_summary_statistics: mean, std.dev, etc.)
- Correlation matrices (analyze_correlations)
- Group-by aggregations (group_by_analysis: multi-function support)
- Time Series Processing
- Temporal aggregation (time_series_analysis)
- Anomaly Detection
- Z-score/IQR based detection (detect_anomalies)

tables = mcp.call_tool("list_tables")
stats = mcp.call_tool("get_summary_statistics", {"table_name": "sales"})

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "local_pgsql": {
            "github": {
                "command": "docker",
                "args": [
                    "build",
                    "-t",
                    "mcp-pgsql-python-service",
                    ".",
                    "&&",
                    "docker",
                    "run",
                    "-p",
                    "8000:8000",
                    "-e",
                    "DB_HOST=${DB_HOST}",
                    "-e",
                    "DB_PORT=${DB_PORT:-5432}",
                    "-e",
                    "DB_NAME=${DB_NAME}",
                    "-e",
                    "DB_USER=${DB_USER}",
                    "-e",
                    "DB_PASSWORD=${DB_PASSWORD}",
                    "mcp-pgsql-python-service"
                ],
                "env": {
                    "GITHUB_PERSONAL_ACCESS_TOKEN": "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",
                    "DB_HOST": "postgres",
                    "DB_PORT": "5432",
                    "DB_NAME": "postgres",
                    "DB_USER": "postgres",
                    "DB_PASSWORD": "postgres"
                }
            }
        }
    }
}

McpServers

{
    "github": {
        "command": "docker",
        "args": [
            "build",
            "-t",
            "mcp-pgsql-python-service",
            ".",
            "&&",
            "docker",
            "run",
            "-p",
            "8000:8000",
            "-e",
            "DB_HOST=${DB_HOST}",
            "-e",
            "DB_PORT=${DB_PORT:-5432}",
            "-e",
            "DB_NAME=${DB_NAME}",
            "-e",
            "DB_USER=${DB_USER}",
            "-e",
            "DB_PASSWORD=${DB_PASSWORD}",
            "mcp-pgsql-python-service"
        ],
        "env": {
            "GITHUB_PERSONAL_ACCESS_TOKEN": "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",
            "DB_HOST": "postgres",
            "DB_PORT": "5432",
            "DB_NAME": "postgres",
            "DB_USER": "postgres",
            "DB_PASSWORD": "postgres"
        }
    }
}

MCP (Modular Control Platform)

Database Analytics & Query Automation Toolkit

Core Features

Database Interaction Tools

- Schema Exploration - List all tables (list_tables) - Get table schema (get_table_schema) - Data Sampling - Preview table contents (get_table_sample) - Custom Query Execution - Run parameterized SQL (run_query) - Statistical Analysis - Numerical summaries (get_summary_statistics: mean, std.dev, etc.) - Correlation matrices (analyze_correlations) - Group-by aggregations (group_by_analysis: multi-function support) - Time Series Processing - Temporal aggregation (time_series_analysis) - Anomaly Detection - Z-score/IQR based detection (detect_anomalies)

Built-in Prompts Library

- SQL Cheatsheet (basic_sql_guide) - Analysis Task Templates (data_analysis_tasks)

Technical Architecture

- Modular Design: Dynamic tool registration via @mcp.tool decorator - Type Safety: Strict input/output typing (e.g., List[Dict], Optional) - Database Abstraction: DatabaseManager interface for backend-agnostic operations

Use Cases

1. Data Exploration: Rapid dataset understanding 2. Automated Reporting: Scheduled statistical summaries 3. Anomaly Monitoring: Real-time data quality checks 4. AI-Augmented Analysis: Structured data access for LLMs

Integration Example

```python

Initialize MCP with database

mcp = MCP() db = DatabaseManager("postgresql://user:pass@localhost/db") register_tools(mcp, db) register_prompts(mcp)

Tool usage examples

tables = mcp.call_tool("list_tables") stats = mcp.call_tool("get_summary_statistics", {"table_name": "sales"})
No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.