Prototipo · Versión preliminar: todos los servidores del registro oficial, sincronizados cada 30 minutos. Las reseñas y las cuentas llegarán en una etapa posterior.
PopNx MCPServidores MCP para quienes usan IA · explicados con palabras sencillas

MCP Database Doctor

de petrovicistefanversión 0.1.2i★ –iSe ejecuta en tu computadora
Nombre en el registroio.github.petrovicistefan/mcp-database-doctor

Instalar

Resumen

Descripción del creador (original en inglés)

Offline PostgreSQL query, migration and EXPLAIN diagnostics for AI agents.

Los tres pilares de PopNx MCP

Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.

Qué puedes hacer con él

Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.

  • Conexión: Se ejecuta en tu computadora
  • Transporte: stdio
  • Categoría: Bases de datos y conjuntos de datos

Instalación

Elige la app de IA que usas y copia la configuración.

Antes de instalar

Necesitas

  • npmNode.js instalado (para el comando npx)

¿Qué app usas?

Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.

Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json

{
  "mcpServers": {
    "database-doctor": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-database-doctor"
      ]
    }
  }
}

Ejecuta esto en tu terminal

claude mcp add database-doctor -- npx -y mcp-database-doctor

Abrir en Cursor

O copia la configuración tú

Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json

{
  "mcpServers": {
    "database-doctor": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-database-doctor"
      ]
    }
  }
}

Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.

Abrir en VS Code

O copia la configuración tú

Pégalo en .vscode/mcp.json de tu proyecto

{
  "servers": {
    "database-doctor": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "mcp-database-doctor"
      ]
    }
  }
}

Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.

Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.

Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.

Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.

Qué puede hacer

Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.

Revisiones básicasi

Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 8 nov 2026

  • ✓ Superada

    El creador coincide con el repo

    El nombre en el registro se verificó con la cuenta de GitHub petrovicistefan, dueña del repo

  • … Aún sin revisar

    Sigue en mantenimiento

    Todavía no hemos leído este repo en GitHub

  • … Aún sin revisar

    Tiene licencia

    Todavía no hemos leído este repo en GitHub

  • – No aplica

    El endpoint responde

    Este se ejecuta en tu computadora; no hay endpoint en internet

  • – No aplica

    Inicio de sesión con OAuth

    Se ejecuta en tu computadora y usa ajustes locales en su lugar

  • … Aún sin revisar

    Sin instrucciones ocultas en las descripciones de herramientas

    Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet

Comparado con otros en Bases de datos y conjuntos de datosi

  • Más estrellas que el 0% de los otros 1144 servidores de esta categoría
  • Publicado en el registro más recientemente que el 68% de los otros 1144 servidores de esta categoría
  • Revisiones básicas iguales o mejores que el 100% de los otros 1144 servidores de esta categoría

Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.

Preguntas frecuentes

¿Es seguro MCP Database Doctor?

Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.

¿Qué claves o códigos necesita?

El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.

¿Se ejecuta en mi computadora o en la nube?

Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).

¿Sigue en mantenimiento?

El repo de GitHub cambió por última vez –, y la última versión (0.1.2) llegó al registro hace 19 días.

¿Qué apps pueden usarlo?

Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Node.js en tu computadora.

¿Qué puedo usar en su lugar?

En la misma categoría: Supabase, MongoDB MCP Server, Elasticsearch MCP Server

Alternativas

Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.

Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi

Supabase

de supabase

MCP server for interacting with the Supabase platform

Computadora o nube★ 2993Apache-2.0Actualizado ayer
Instalar

MongoDB MCP Server

de mongodb-js

MongoDB Model Context Protocol Server

Se ejecuta en tu computadora★ 1157Apache-2.0Actualizado hace 3 días
Instalar

MCP server for interacting with Elasticsearch

Se ejecuta en tu computadora★ 315Apache-2.0Actualizado hace 14 meses
Instalar

README del creador

Abrir el README

Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.

MCP Database Doctor

Catch dangerous PostgreSQL migrations and slow queries before your AI agent ships them — offline, no DB credentials.

Offline PostgreSQL migration linting and query analysis for AI coding agents. Detects table-locking DDL, dangerous type changes, slow query patterns, and execution plan issues before they reach production. Nothing leaves your machine, no database connection required.


Quick Install

Cursor

Click the button above to install in one step, or use this link: cursor://anysphere.cursor-deeplink/mcp/install?name=database-doctor&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIm1jcC1kYXRhYmFzZS1kb2N0b3IiXX0=

Or add manually to ~/.cursor/mcp.json:

{

"mcpServers": { "database-doctor": { "command": "npx", "args": ["-y", "mcp-database-doctor"] } } }

Claude Code
claude mcp add database-doctor -- npx -y mcp-database-doctor

Or, if available in the Cursor plugin marketplace:

/plugin marketplace add petrovicistefan/mcp-marketplace
Claude Desktop

Add to claude_desktop_config.json:

{

"mcpServers": { "database-doctor": { "command": "npx", "args": ["-y", "mcp-database-doctor"] } } }

VS Code

Or add to .vscode/mcp.json:

{

"mcpServers": { "database-doctor": { "command": "npx", "args": ["-y", "mcp-database-doctor"] } } }

Any MCP Client
npx -y mcp-database-doctor

⭐ Star this repository to support the project and stay updated! → Give a star


📋 Table of Contents

  • Why Database Doctor?
  • Use Cases
  • What It Checks
  • How It Compares
  • Tools
  • Example Prompts
  • Limitations
  • Development
  • More MCP Servers by the Author
  • Contributing
  • License

Why Database Doctor?

The hook: Your AI agent generates migrations that *look* harmless: CREATE INDEX, ALTER COLUMN ... TYPE, ADD COLUMN NOT NULL. But each one can lock your production table for minutes or hours, block every write, and take down your app.

Database Doctor catches these before they ship:

  • No database required: Static analysis only, works with uncommitted code
  • No credentials: Nothing connects to your database or executes SQL
  • No network: Everything runs locally on your machine
  • AI-native: Designed for AI coding agents (Claude Code, Cursor, GitHub Copilot)
When to Use

✅ Before shipping migrations — Catch CREATE INDEX without CONCURRENTLY, dangerous type changes, volatile defaults ✅ Reviewing slow queries — Detect SELECT *, deep OFFSET, unbounded writes, unindexed predicates ✅ Analyzing EXPLAIN plans — Spot large sequential scans, row estimate errors, sort spills, high loop counts ✅ Suggesting indexes — Get conservative DDL candidates for WHERE clause columns


Use Cases

1. AI Agent Code Review

Your agent writes the migration. Database Doctor reviews it before committing.

User: "Add an email column to the users table"

Agent writes: ALTER TABLE users ADD COLUMN email VARCHAR(255) NOT NULL;

Database Doctor flags: ⚠️ NOT_NULL_CHANGE (medium severity) Adding NOT NULL requires a full table scan and may hold locks. Recommendation: Backfill data first, then add NOT NULL separately.

Agent rewrites: ALTER TABLE users ADD COLUMN email VARCHAR(255); -- Backfill in application code or batched UPDATE ALTER TABLE users ALTER COLUMN email SET NOT NULL;

2. Pre-Commit Checks

Catch dangerous migrations before they reach CI.

Ask your AI: *"Check all migrations in db/migrations/ for safety"*

Database Doctor reviews each file and reports:

  • Destructive DDL (DROP, TRUNCATE)
  • Blocking index creation
  • Table-rewriting column changes
  • Constraint validation without NOT VALID
  • Transactions that can't hold CONCURRENTLY operations
3. Query Optimization

Find performance issues before they hit production.

Your agent generates:

SELECT * FROM orders 

WHERE LOWER(email) = 'user@example.com' OFFSET 10000 LIMIT 20;

Database Doctor flags:

  • SELECT_STAR: Wildcard projection couples schema to caller
  • FUNCTION_PREDICATE: LOWER() may not use an index on email
  • DEEP_OFFSET: Offset 10000 discards many rows, use keyset pagination
4. EXPLAIN Plan Review

Submit a slow query's execution plan for analysis.

# On your test database

EXPLAIN (FORMAT JSON) SELECT ... > plan.json

In your AI client

"Review this execution plan from plan.json"

Database Doctor detects:

  • Sequential scans on large tables
  • Row estimate errors (10x+ off)
  • Sort operations spilling to disk
  • High loop counts in nested joins

What It Checks

Migration Safety (check_migration)
CheckSeverityWhat It Catches
DESTRUCTIVE_DDLHighDROP TABLE/SCHEMA/DATABASE, TRUNCATE
COLUMN_TYPE_CHANGEHighALTER COLUMN ... TYPE (table rewrite + strong locks)
BLOCKING_INDEXMediumCREATE INDEX without CONCURRENTLY (blocks writes)
CONCURRENT_INDEX_TRANSACTIONHighCONCURRENTLY inside BEGIN/COMMIT (invalid)
UNIQUE_INDEX_DATAMediumUNIQUE index requires compatible existing data
NOT_NULL_CHANGEMediumSET NOT NULL or ADD COLUMN NOT NULL (table scan)
CONSTRAINT_VALIDATIONMediumADD FOREIGN KEY / CHECK without NOT VALID
VOLATILE_DEFAULTHighDEFAULT with random(), clock_timestamp(), nextval()
CASCADEHighCASCADE can affect dependent objects
Query Analysis (analyze_query)
CheckSeverityWhat It Catches
SELECT_STARLowWildcard projection increases coupling
UNBOUNDED_WRITEHighUPDATE/DELETE without WHERE
DEEP_OFFSETMediumLarge OFFSET discards rows, use keyset pagination
FUNCTION_PREDICATEMediumFunction in WHERE may not use index
UNORDERED_LIMITLowLIMIT without ORDER BY gives unstable results
CROSS_JOINMediumExplicit CROSS JOIN multiplies row counts
NULL_NOT_INMediumNOT IN subquery with NULLs can produce unexpected results
RANDOM_SORTMediumORDER BY random() can require sorting all rows
EXPLAIN Plan Analysis (explain_plan)
CheckSeverityWhat It Catches
LARGE_SEQ_SCANMediumSequential scan with 10,000+ estimated rows
ROW_ESTIMATE_ERRORMediumEstimated vs actual rows differ by 10x+
SORT_SPILLMediumSort spilled to disk (increase work_mem)
HIGH_LOOPSMediumPlan node executes 1000+ loops

How It Compares

*As of October 2026. All comparisons stated cautiously based on public documentation.*

FeatureDatabase DoctorMigrationPilotLocksmithBallastDBHub
Offline analysis✅ No DB connection✅ Optional✅ No DB connection❌ Requires DB❌ Connects to DB
Migration linting✅ 9 migration rules✅ 112 rules✅ 9 rules + rewrites✅ Superset of Squawk❌ Not a linter
Query analysis✅ 8 query patterns❌ Migration-only❌ Migration-only❌ Migration-only✅ Via execution
EXPLAIN plan analysis✅ 4 plan checks❌❌❌✅ Via EXPLAIN
Index suggestions✅ Conservative candidates❌❌❌❌
MCP server✅ 5 tools✅ 4 tools✅ 3 tools⚠️ Unclear✅ Multi-DB gateway
No credentials needed✅ Never connects⚠️ Optional✅ Never connects❌ Requires DSN❌ Requires connection
AI agent integration✅ MCP-native✅ MCP + CLI✅ MCP-native⚠️ MCP unclear✅ Multi-DB MCP
Auto-fix❌ Recommendations only✅ 20 auto-fixes✅ Paste-ready rewrites⚠️ Unclear❌
PostgreSQL-specific✅ PostgreSQL-first✅ PostgreSQL-only✅ PostgreSQL-only✅ PostgreSQL-only❌ Multi-DB
LicenseMITMITMITMITMIT

Our differentiators:

  • Broadest scope: migrations + queries + EXPLAIN plans + index suggestions (4 capabilities in one tool)
  • Zero setup: No database, no credentials, no config — works on uncommitted code
  • Privacy-first: Completely offline, nothing sent anywhere
  • PostgreSQL-native: Not regex-based, handles comments, strings, dollar quotes, nested blocks
  • Lightweight: Zero dependencies beyond MCP SDK and Zod

When to use alternatives:

  • MigrationPilot: Need 112 rules, auto-fix, VS Code extension, GitHub Action with SARIF
  • Locksmith: Need paste-ready safe rewrites and lock matrix documentation
  • Ballast: Need load-aware analysis weighted by real table size (requires DB connection)
  • DBHub: Need to connect to live databases for exploration and guarded SQL execution

Tools

Database Doctor exposes 5 MCP tools for AI agents:

ToolInputOutput
analyze_querysql (string)SQL anti-patterns with severity, message, recommendation, statement number
check_migrationsql (string)Destructive DDL, locking risks, transaction conflicts, constraint validation issues

| suggest_indexes | sql (string) existingIndexes (optional array) | Conservative index DDL candidates (never applied, requires EXPLAIN validation) | | explain_plan | plan (JSON string) | Large scans, row estimate errors, sort spills, high loops | | health_report | queries (optional array) migrations (optional array) plans (optional array) | Aggregate review of supplied artifacts (not live database health) |

All tools are read-only, idempotent, and require no authentication.

Reports include:

  • code: Stable identifier for the finding type
  • severity: high, medium, or low
  • message: What the issue is
  • recommendation: How to fix it
  • statement: Which statement in multi-statement SQL (1-indexed)

Example Prompts

For migrations:

"Check this migration for locking issues"

"Review db/migrations/003_add_email_index.sql before I commit" "Is this ALTER TABLE safe for a production table with 10M rows?"

For queries:

"Analyze this query for performance issues"

"Why is this SELECT slow?" "Review the queries in src/repositories/user.ts"

For EXPLAIN plans:

"Review this EXPLAIN plan from plan.json"

"What's wrong with this execution plan?"

**For index sugges

Solo se muestra el principio; lee el resto en el repo

Pregunta a PopNx