Skip to main content
Glama
archimedes-market

mcp-postgres-analytics

Archimedes Trust Report — VERIFIED 92/100

Verified asset on Archimedes Market. View the full 4-dimension Trust Report (security · quality · license · complexity) and the curated catalog on the asset page.


MCP PostgreSQL Analytics

Read-only PostgreSQL analytics agent exposed as an MCP server. Designed to drop into a production database safely — no DDL, no DML, no writes ever.

Eight tools cover the observability surface most teams reach for during incident response and capacity planning:

  • query_planEXPLAIN (ANALYZE, BUFFERS, VERBOSE) against a query string, with annotated cost hot spots

  • slow_queries — top N queries by mean time / total time / call count from pg_stat_statements

  • index_usage — index hit ratio, dead indexes, missing-index hints from pg_stat_user_indexes

  • table_bloat — bloat estimation per table using the pgstattuple-equivalent heuristic

  • vacuum_status — last vacuum / autovacuum / analyze per table, with wraparound risk flagged

  • connection_stats — active sessions, idle-in-transaction, longest-running transactions

  • lock_waits — blocked queries with the blocker chain resolved

  • size_summary — database/schema/table/index size, sorted

Safety guarantees

The MCP server connects as a role with pg_read_all_stats and CONNECT only. The connection string in MCP_POSTGRES_DSN is validated at startup to refuse any role that has CREATE, INSERT, UPDATE, DELETE, TRUNCATE, ALTER, or DROP privileges on any schema. Refusal exits with a clear error rather than running with elevated rights.

query_plan accepts a query string but executes it inside EXPLAIN (...) only — the query itself is never run.

Related MCP server: readonly-postgres-mcp

Quick start

pip install mcp-postgres-analytics
export MCP_POSTGRES_DSN="postgresql://reader@host:5432/db"
mcp-postgres-analytics serve

Claude Desktop config:

{
  "mcpServers": {
    "postgres-analytics": {
      "command": "mcp-postgres-analytics",
      "args": ["serve"],
      "env": {
        "MCP_POSTGRES_DSN": "postgresql://reader@host:5432/db"
      }
    }
  }
}

Typical agent workflow

Agent: "Why is our /api/checkout endpoint slow this week?"
↓
1. slow_queries → top 5 queries by mean time
2. query_plan on the worst → spots a sequential scan
3. index_usage → confirms missing index hint
4. size_summary → confirms the table is 14GB
5. Output: "Index on orders(status, created_at) missing. ~150ms saved per call. Run during low-traffic window."

What it does NOT do

  • No write operations of any kind

  • No connection to non-PostgreSQL databases (use the DuckDB MCP for Parquet/CSV)

  • No backup/restore (use pg_dump directly)

  • No replication topology management

If you need write access for an agent workflow, use a separate MCP server with explicit gates. Mixing read-only analytics with write operations is exactly the kind of conflated tooling that this server was built to avoid.

License

MIT.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Read-only PostgreSQL MCP server that enables running SELECT queries, listing tables and schemas, and describing columns, with built-in protection against writes and malicious SQL attacks.
    529 npm
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    PostgreSQL administration MCP server for read-only inspection, monitoring, and non-destructive maintenance, enabling safe database interaction via assistants like Claude without data modification.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides a read-only PostgreSQL MCP server with schema introspection. Enforces least-privilege database roles to prevent any writes, even from malicious SQL.
    MIT