Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Postgres Scout MCP

by bluworkversion 1.0.3i★ –iRuns on your computer
Registry nameio.github.bluwork/postgres-scout-mcp

Install

Overview

Description from the maker (original English)

Scout your PostgreSQL databases with AI - safety features, monitoring, and data quality

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Databases & datasets

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • The registry lists no key to fill in.

You need

  • npmNode.js installed (for the npx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "postgres-scout": {
      "command": "npx",
      "args": [
        "-y",
        "postgres-scout-mcp",
        "read-only",
        "postgresql://localhost:5432/postgres"
      ]
    }
  }
}

Run this in your terminal

claude mcp add postgres-scout -- npx -y postgres-scout-mcp read-only postgresql://localhost:5432/postgres

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "postgres-scout": {
      "command": "npx",
      "args": [
        "-y",
        "postgres-scout-mcp",
        "read-only",
        "postgresql://localhost:5432/postgres"
      ]
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "postgres-scout": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "postgres-scout-mcp",
        "read-only",
        "postgresql://localhost:5432/postgres"
      ]
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.

Your choice stays on this device in a cookie; no account needed.

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account bluwork, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Databases & datasetsi

  • More stars than 0% of the other 953 servers in this category
  • Published to the registry more recently than 6% of the other 953 servers in this category
  • Basic checks equal to or better than 100% of the other 953 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Postgres Scout MCP safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

The registry does not list a required key, though some servers ask you to sign in on first use.

Does it run on my computer or in the cloud?

It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).

Is it still maintained?

The GitHub repo last changed –, and the latest version (1.0.3) reached the registry 8 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.

What can I use instead?

In the same category: Supabase, MongoDB MCP Server, Elasticsearch MCP Server

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Supabase

by supabase

Supabase’s official server lets AI create tables, query data and review project settings in your Supabase database.

Computer or cloud★ 2,993Apache-2.0Updated yesterday
Install

MongoDB MCP Server

by mongodb-js

MongoDB Model Context Protocol Server

Runs on your computer★ 1,157Apache-2.0Updated 2 days ago
Install

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

Postgres Scout MCP

Scout your PostgreSQL databases with AI - A production-ready Model Context Protocol server with built-in safety features, monitoring, and data quality tools.

What You Get

You ask:

*"How healthy is my production database? Any urgent issues?"*

Postgres Scout returns:


Overall Health Score: 78/100

Component Breakdown

ComponentScoreStatus
Cache Performance94/100Healthy
Index Efficiency82/100Good
Table Bloat61/100Needs Attention
Connection Usage75/100Fair

Issues Found

  • HIGH — Table orders has 34% bloat (2.1 GB wasted). VACUUM FULL recommended.
  • MEDIUM — 3 unused indexes on sessions consuming 890 MB.
  • LOW — Cache hit ratio for analytics_events is 71% (target: >90%).

Recommendations

  • Run VACUUM FULL orders during maintenance window
  • Drop unused indexes: idx_sessions_legacy, idx_sessions_old_token, idx_sessions_temp
  • Consider adding analytics_events to shared_buffers or partitioning by date

That's getHealthScore — one of 38 tools covering exploration, diagnostics, optimization, monitoring, data quality, and safe writes.

Quick Start

Claude Code
claude mcp add postgres-scout -- npx -y postgres-scout-mcp postgresql://localhost:5432/mydb

Then ask: *"Show me the largest tables and whether they have any bloat issues."*

Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{

"mcpServers": { "postgres-scout": { "command": "npx", "args": ["-y", "postgres-scout-mcp", "postgresql://localhost:5432/mydb"], "type": "stdio" } } }

Cursor / VS Code

Add to your MCP settings:

{

"postgres-scout": { "command": "npx", "args": ["-y", "postgres-scout-mcp", "postgresql://localhost:5432/mydb"] } }

Read-Only vs Read-Write

The server runs in read-only mode by default. For write operations, run a separate instance:

{

"mcpServers": { "postgres-scout-readonly": { "command": "npx", "args": ["-y", "postgres-scout-mcp", "--read-only", "postgresql://localhost:5432/production"], "type": "stdio" }, "postgres-scout-readwrite": { "command": "npx", "args": ["-y", "postgres-scout-mcp", "--read-write", "postgresql://localhost:5432/development"], "type": "stdio" } } }

  • postgres-scout-readonly: Safe exploration, no risk of data modification
  • postgres-scout-readwrite: Write operations when explicitly needed

Tools

Explore — understand your database
  • listDatabases — databases the user has access to
  • getDatabaseStats — size, cache hit ratio, connection info
  • listSchemas — all schemas in the current database
  • listTables — tables with size and row statistics
  • describeTable — columns, constraints, indexes, and more
Query — run and analyze
  • executeQuery — run SELECT queries (or writes in read-write mode)
  • explainQuery — EXPLAIN plans for performance analysis
  • optimizeQuery — optimization recommendations for a specific query
Diagnose — find problems before they find you
  • getHealthScore — overall health score with component breakdown
  • detectAnomalies — anomalies in performance, connections, and data
  • analyzeTableBloat — bloat analysis for VACUUM planning
  • getSlowQueries — slow query analysis (requires pg_stat_statements)
  • suggestVacuum — VACUUM recommendations based on dead tuples and bloat
Optimize — make it faster
  • suggestIndexes — missing index recommendations from query patterns
  • suggestPartitioning — partitioning strategies for large tables
  • getIndexUsage — identify unused or underused indexes
Monitor — watch it live
  • getCurrentActivity — active queries and connections
  • analyzeLocks — lock contention and blocking queries
  • getLiveMetrics — real-time metrics over a time window
  • getHottestTables — tables with highest activity
  • getTableMetrics — comprehensive per-table I/O and scan stats
Data Quality — trust your data
  • findDuplicates — duplicate rows by column combination
  • findMissingValues — NULL analysis across columns
  • findOrphans — orphaned records with invalid foreign keys
  • checkConstraintViolations — test constraints before adding them
  • analyzeTypeConsistency — type inconsistencies in text columns
Relationships — follow the connections
  • exploreRelationships — multi-hop foreign key traversal
  • analyzeForeignKeys — foreign key health and performance
Time Series — temporal analysis
  • findRecent — rows within a time window
  • analyzeTimeSeries — window functions and anomaly detection
  • detectSeasonality — seasonal pattern detection
Export — get data out
  • exportTable — CSV, JSON, JSONL, or SQL
  • generateInsertStatements — INSERT statements for migration
Write (read-write only) — safe modifications
  • previewUpdate / previewDelete — see what would change before committing
  • safeUpdate — UPDATE with dry-run, row limits, empty WHERE protection
  • safeDelete — DELETE with dry-run, row limits, empty WHERE protection
  • safeInsert — INSERT with validation, batching, ON CONFLICT support

Security

  • Read-only by default — write operations must be explicitly enabled
  • All queries use parameterized values
  • SQL injection prevention with input validation and pattern detection
  • Identifier sanitization for table/column names
  • Rate limiting on all operations
  • Query timeouts to prevent long-running queries
  • Response size limits to prevent memory exhaustion

Examples

*"What are the largest tables and do they have bloat?"*

listTables({ schema: "public" })

analyzeTableBloat({ schema: "public", minSizeMb: 100 })

*"Find duplicate emails in the users table."*

findDuplicates({ table: "users", columns: ["email"] })

*"Which queries are slowest and how can I speed them up?"*

getSlowQueries({ minDurationMs: 100, limit: 10 })

suggestIndexes({ schema: "public" })

*"Show me what's happening on the database right now."*

getCurrentActivity()

getLiveMetrics({ metrics: ["queries", "connections", "cache"], duration: 30000, interval: 1000 }) getHottestTables({ limit: 5, orderBy: "seq_scan" })

*"Find orphaned orders that reference deleted customers."*

findOrphans({ table: "orders", foreignKey: "customer_id", referenceTable: "customers", referenceColumn: "id" })

Configuration

VariableDefaultDescription
QUERY_TIMEOUT30000Query timeout in milliseconds
MAX_RESULT_ROWS10000Maximum rows returned per query
ENABLE_RATE_LIMITtrueEnable rate limiting
RATE_LIMIT_MAX_REQUESTS100Requests per window
RATE_LIMIT_WINDOW_MS60000Rate limit window (ms)
PGMAXPOOLSIZE10Connection pool max size
PGMINPOOLSIZE2Connection pool min size
PGIDLETIMEOUT10000Idle connection timeout (ms)
ENABLE_LOGGINGfalseEnable file logging
LOG_DIR./logsLog file directory
LOG_LEVELinfoLog verbosity: debug, info, warn, error

CLI flags: --read-only (default), --read-write, --mode

Logging

File logging is disabled by default. Set ENABLE_LOGGING=true to enable. Two log files are created in LOG_DIR:

  • tool-usage.log — every tool call with timestamp, name, and arguments
  • error.log — errors with stack traces

Connection strings are automatically redacted in all output.

Development

git clone https://github.com/bluwork/postgres-scout-mcp.git

cd postgres-scout-mcp pnpm install pnpm build pnpm test

License

Apache-2.0

Ask PopNx