/ Directorio / Playground / DBHub
● Oficial bytebase 🔑 Requiere tu clave

DBHub

por bytebase · bytebase/dbhub

Un MCP, muchas bases de datos — Postgres, MySQL, SQL Server, SQLite, Oracle — en una interfaz de consulta de solo lectura por defecto.

DBHub de Bytebase es un MCP sin dependencias que se comunica con múltiples bases de datos relacionales a través de un único binario npx @bytebase/dbhub. Pasa el DSN para tu sabor de BD y obtén exploración de esquemas, muestreo de tablas y ejecución de SQL. Se ejecuta en modo de solo lectura por defecto, lo que lo hace seguro para sesiones de exploración en producción.

Por qué usarlo

Características clave

Demo en vivo

Cómo se ve en la práctica

dbhub.replay ▶ listo
0/0

Instalar

Elige tu cliente

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "dbhub": {
      "command": "npx",
      "args": [
        "-y",
        "@bytebase/dbhub"
      ]
    }
  }
}

Abre Claude Desktop → Settings → Developer → Edit Config. Reinicia después de guardar.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "dbhub": {
      "command": "npx",
      "args": [
        "-y",
        "@bytebase/dbhub"
      ]
    }
  }
}

Cursor usa el mismo esquema mcpServers que Claude Desktop. La configuración del proyecto prevalece sobre la global.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "dbhub": {
      "command": "npx",
      "args": [
        "-y",
        "@bytebase/dbhub"
      ]
    }
  }
}

Haz clic en el icono MCP Servers de la barra lateral de Cline y luego en "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "dbhub": {
      "command": "npx",
      "args": [
        "-y",
        "@bytebase/dbhub"
      ]
    }
  }
}

Mismo formato que Claude Desktop. Reinicia Windsurf para aplicar.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "dbhub",
      "command": "npx",
      "args": [
        "-y",
        "@bytebase/dbhub"
      ]
    }
  ]
}

Continue usa un array de objetos de servidor en lugar de un mapa.

~/.config/zed/settings.json
{
  "context_servers": {
    "dbhub": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "@bytebase/dbhub"
        ]
      }
    }
  }
}

Añádelo a context_servers. Zed recarga en caliente al guardar.

claude mcp add dbhub -- npx -y @bytebase/dbhub

Un solo comando. Verifica con claude mcp list. Quita con claude mcp remove.

Casos de uso

Usos del mundo real: DBHub

Consultar 3 bases de datos diferentes en una sesión

👤 Ingenieros cuyo stack tiene >1 BD relacional ⏱ ~20 min intermediate

Cuándo usarlo: Tu stack tiene Postgres para datos primarios, MySQL para un servicio heredado y SQL Server para reportes — y quieres un único asistente de IA en todos ellos.

Requisitos previos
  • DSN para cada BD con credenciales de solo lectura — Formatos postgres://, mysql://, sqlserver://, sqlite://, oracle://
Flujo
  1. Configura múltiples DSN
    Muéstrame a cuál BD estoy apuntando actualmente. Si es necesario, cambia al DSN de MySQL.✓ Copiado
    → Indicador claro de BD activa
  2. Inspecciona el esquema
    Lista las tablas en la BD actual con recuentos aproximados de filas.✓ Copiado
    → Catálogo de tablas
  3. Referencia cruzada entre BD
    Consulta Postgres para correos de usuario, luego consulta legacy_users de MySQL para los mismos correos, dime quién está en uno pero no en el otro.✓ Copiado
    → Informe de reconciliación

Resultado: Un único flujo de trabajo en BD heterogéneas sin malabarismo de diferentes servidores MCP.

Errores comunes
  • Las diferencias de dialecto SQL confunden a Claude (p. ej. LIMIT vs TOP) — Dile a Claude explícitamente cuál es el sabor de BD que apunta la consulta actual, o divide en turnos específicos de BD
Combinar con: filesystem

Analiza un archivo SQLite que alguien te envió

👤 Ingenieros / analistas que reciben un archivo .db opaco ⏱ ~10 min beginner

Cuándo usarlo: Un cliente envió un volcado de sqlite y quiere que lo eches un vistazo.

Flujo
  1. Apunta DBHub al archivo
    Usa DSN sqlite:///path/to/data.db. Lista tablas + recuentos de filas.✓ Copiado
    → Inventario de tablas
  2. Muestrea cada tabla
    Para cada tabla no trivial, muestra 5 filas de muestra e infiere el propósito.✓ Copiado
    → Resumen por tabla
  3. Responde la pregunta del cliente
    El cliente pregunta: <question>. Escribe SQL, ejecuta, devuelve la respuesta.✓ Copiado
    → Consulta + resultado

Resultado: Exploración rápida de un archivo sqlite desconocido sin extraerlo a otra herramienta.

Errores comunes
  • Las tablas sqlite grandes no tienen índices — los escaneos completos pueden bloquear el archivo — Abre con solo lectura; evita agregaciones en >1M filas en una sola consulta
Combinar con: filesystem

Ejecuta consultas de reportes contra una réplica de lectura de forma segura

👤 BI / análisis ⏱ ~15 min beginner

Cuándo usarlo: Tienes una réplica para análisis y quieres reportes ad-hoc impulsados por IA sin exponer la primaria.

Requisitos previos
  • DSN de solo lectura contra la réplica — Credenciales exclusivas de la réplica; statement_timeout obligatorio en DSN
Flujo
  1. Verifica que sea la réplica
    Confirma que la conexión actual sea de solo lectura y apunte al host de la réplica.✓ Copiado
    → Cadena de host + bandera de solo lectura verificada
  2. Ejecuta el reporte
    [pega la pregunta empresarial]. Traduce a SQL, ejecuta, devuelve resultados.✓ Copiado
    → Conjunto de resultados
  3. Persiste para reutilización
    Guarda este SQL en /reports/<name>.sql con un comentario explicando la pregunta.✓ Copiado
    → Archivo SQL guardado

Resultado: BI ad-hoc sin riesgo para la primaria de producción.

Errores comunes
  • Las consultas pesadas ralentizan la réplica y crean retraso de replicación — Establece statement_timeout y ejecuta consultas grandes fuera de horas pico
Combinar con: filesystem · antv-chart

Audita procedimientos almacenados de SQL Server para una migración

👤 Equipos que migran desde SQL Server ⏱ ~30 min advanced

Cuándo usarlo: Necesitas una lista de cada procedimiento almacenado, sus líneas de código y fecha de última modificación.

Flujo
  1. Lista los procedimientos
    Consulta sys.procedures + sys.sql_modules para listar todos los procedimientos con nombre, esquema, líneas y fecha de última modificación.✓ Copiado
    → Inventario de procedimientos
  2. Clasifica la complejidad
    Agrupa los procedimientos por recuento de líneas: trivial (<50), medio (50-300), complejo (>300). Cuenta cada grupo.✓ Copiado
    → Histograma de complejidad
  3. Expón características específicas de MSSQL
    Para procedimientos complejos, marca el uso de construcciones específicas de MSSQL (CROSS APPLY, recursión CTE, TOP, GETDATE) — estos son los elementos de migración difíciles.✓ Copiado
    → Lista de riesgo de migración

Resultado: Un plan de migración de procedimientos almacenados basado en recuentos reales.

Errores comunes
  • Algunos procedimientos contienen SQL dinámico que es difícil de clasificar — Marca cualquier procedimiento con EXEC sp_executesql para revisión manual
Combinar con: filesystem

Combinaciones

Combínalo con otros MCPs para multiplicar por 10

dbhub + antv-chart

Ejecuta SQL y luego grafica el resultado directamente

Consulta los ingresos semanales de la réplica Postgres a través de DBHub, luego renderiza como un gráfico de líneas AntV.✓ Copiado
dbhub + filesystem

Guarda consultas + resultados para reproducibilidad

Ejecuta la consulta de KPI semanal, guarda SQL en /sql/weekly.sql y resultado CSV en /data/weekly-<date>.csv.✓ Copiado
dbhub + notion

Publica un reporte respaldado por SQL en Notion

Ejecuta la consulta de principales clientes, crea una página de Notion con el resultado como tabla.✓ Copiado

Herramientas

Lo que expone este MCP

HerramientaEntradasCuándo llamarCoste
list_databases Primer paso de exploración gratuito
list_tables database? Catálogo antes de consultas gratuito
describe_table table, schema? Inspecciona el esquema antes de consultar gratuito
execute_sql sql, params? Lee o escribe SQL (escribir requiere una bandera) depende de la consulta
execute_read_sql sql, params? Ejecución explícita de solo lectura depende

Coste y límites

Lo que cuesta ejecutarlo

Cuota de API
Limitado por tus límites de conexión de BD
Tokens por llamada
Depende del tamaño del resultado; límite con LIMIT
Monetario
Gratuito — los costos son solo tu alojamiento de BD
Consejo
Establece un statement_timeout en el DSN; las consultas escritas por IA pueden ser entusiastas con respecto a los escaneos completos.

Seguridad

Permisos, secretos, alcance

Ámbitos mínimos: SELECT en las tablas de destino
Almacenamiento de credenciales: DSN en env (DSN o variable env por sabor)
Salida de datos: Directo a tu BD; sin proxy de terceros
No conceder nunca: CREATE/DROP/ALTER en el rol de conexión a menos que sea necesario para la sesión

Resolución de problemas

Errores comunes y soluciones

Autenticación fallida / acceso denegado

Credenciales DSN incorrectas o sin SELECT. Reverifica el formato DSN para cada sabor.

Verificar: Conecta con el cliente nativo de la BD usando el mismo DSN
Característica SQL no admitida / error de sintaxis

Desajuste de sabor — dile a Claude cuál es el dialecto de BD activo, o reverifica el prefijo DSN.

Pool de conexión agotado

Reduce la concurrencia o aumenta el tamaño del pool; las consultas de larga duración suelen ser la causa real.

Escrituras rechazadas (solo lectura)

DBHub está en modo de solo lectura por defecto. Reinicia con --readonly=false para esta sesión.

Alternativas

DBHub vs otros

AlternativaCuándo usarlaContrapartida
Postgres MCPSolo usas Postgres; características más profundas específicas de PostgresSabor único
MongoDB MCPNecesitas Mongo junto con relacionalModelo de datos diferente
Supabase MCPEstás en Supabase y quieres gestión de proyecto+BDVinculado a Supabase

Más

Recursos

📖 Lee el README oficial en GitHub

🐙 Ver issues abiertas

🔍 Ver todos los 400+ servidores MCP y Skills