MCPIntermedio5 minActualizado octubre de 2026

MotherDuck MCP

Servidor MCP local de MotherDuck para consultar datos con DuckDB, explorar catálogos y elegir explícitamente los permisos de escritura y conexión.

Fuente: MotherDuck MCP · fuente del proyecto · Oficial · Mantiene MotherDuck · Licencia MIT · Ver original en github.com

Ficha técnica

Transporte
stdio o HTTP
Clientes compatibles
  • Clientes MCP compatibles
Instalación
uvx mcp-server-motherduck con ruta y permisos explícitos

Qué es y qué expone

MotherDuck MCP local conecta asistentes con datos mediante el motor SQL de DuckDB. El proyecto admite archivos locales, bases en memoria, archivos alojados en S3 y conexiones a MotherDuck. La ficha trata la implementación local o autoalojada del repositorio, que debe distinguirse del servicio remoto gestionado enlazado por el propio proyecto.

El servidor permite ejecutar consultas y explorar el catálogo de datos. Algunas configuraciones habilitan escritura o cambio de conexión, mientras otras se preparan para trabajar con un archivo concreto en modo de solo lectura. Esas decisiones forman parte del acceso concedido al agente y deben tomarse antes de empezar una conversación sobre datos reales.

Qué problema resuelve

Para responder una pregunta sobre una base de datos, un agente necesita conocer qué tablas existen y qué columnas contienen antes de preparar una consulta pertinente. El servidor reúne esas operaciones de exploración con la ejecución de SQL. Así se puede recorrer el catálogo y formular una pregunta sobre el esquema observado, en lugar de inventar nombres o pedir al usuario que copie manualmente cada estructura.

La utilidad depende de conectar la fuente correcta y de revisar los permisos. Un archivo de ensayo puede servir para aprender el recorrido sin conceder acceso a datos de producción. La existencia de una consulta ejecutable no demuestra que su interpretación sea correcta: el equipo debe contrastar el resultado con el significado de los campos y con la pregunta original.

Cómo funciona

El cliente inicia el servidor con una ruta y las opciones elegidas. Las herramientas permiten enumerar bases, tablas y columnas y ejecutar consultas en el dialecto de DuckDB. El proyecto contempla stdio y HTTP, por lo que la forma de conexión debe elegirse según el despliegue y el cliente utilizados.

El cambio de base durante una sesión es una capacidad opcional que requiere habilitación. No conviene activar esa flexibilidad por defecto si la tarea solo necesita un archivo. De manera similar, la escritura debe responder al trabajo autorizado. El ejemplo de esta ficha conserva la configuración publicada para un archivo local en modo de solo lectura y utiliza una ruta de ejemplo que debe sustituirse en el entorno privado.

Herramientas del catálogo y consultas

HerramientaFunción
execute_queryconsulta SQL en DuckDB
list_databasesbases disponibles
list_tablestablas y vistas
list_columnscolumnas de tabla o vista

Cómo empezar

  1. Elige una fuente de ensayo y decide si la tarea necesita lectura o también escritura. Evita activar el cambio de conexión si no forma parte del objetivo.

  2. Prepara uv y revisa la configuración del cliente. Sustituye la ruta de ejemplo por un archivo autorizado y comprueba que el proceso puede abrirlo.

  3. Solicita primero el catálogo de tablas y columnas. Utiliza esa información para formular una consulta pequeña cuyo resultado puedas contrastar.

  4. Revisa tanto la consulta como su interpretación antes de ampliar el trabajo o cambiar los permisos de la conexión.

Ejemplo de aplicación

Ejemplo de KIRELEN: un equipo dispone de una base de ensayo y quiere explorar cómo se distribuyen sus registros. Conecta ese archivo, pide las tablas disponibles y revisa las columnas de la tabla elegida. Después formula una pregunta acotada y solicita que el agente muestre la consulta utilizada junto con el resultado.

La revisión comprueba que el filtro y la agregación corresponden al significado de los datos. Si falta información sobre un campo, se aclara antes de aceptar una conclusión. Ese proceso distingue el acceso técnico a la base de la calidad del análisis: ejecutar SQL correctamente no garantiza que la pregunta de negocio esté bien representada.

El ejemplo no describe consultas realizadas sobre una cuenta o un archivo privado. Las capacidades y la configuración se comprobaron por lectura del repositorio, sin instalar el servidor ni conectarlo a una base de datos.

Seguridad y límites

El proyecto advierte que el modo de solo lectura no basta para aislar el acceso de terceros: aún puede permitir operaciones sensibles sobre el sistema de archivos y la configuración de DuckDB. No lo presentes como una barrera completa de seguridad al compartir un servidor. Un despliegue para terceros necesita revisar las medidas específicas que publica la documentación.

La escritura y el cambio de conexión deben habilitarse de forma consciente. Mantén las credenciales fuera de configuraciones públicas y confirma la fuente antes de ejecutar consultas. El servicio remoto de MotherDuck constituye otro recorrido de despliegue; sus condiciones y controles no deben deducirse del ejemplo local de esta ficha.

Configuración documentada

json
{
  "mcpServers": {
    "DuckDB (read-only)": {
      "command": "uvx",
      "args": ["mcp-server-motherduck", "--db-path", "/absolute/path/to/your.duckdb"]
    }
  }
}

Tecnologías y alcance del repositorio

DatoAlcance verificado
Lenguajes del repositorioPython, Makefile, Dockerfile
FuenteRepositorio completo del proyecto

Estado del proyecto y condiciones de uso

La implementación local del repositorio de MotherDuck se revisó el 2026-10-26 y registra licencia MIT. El perfil conserva la actividad del repositorio y enlaza la referencia original. La reseña separa el servidor local del servicio remoto gestionado, y la configuración mostrada se verificó por lectura. No se realizaron consultas ni se concedió acceso a datos durante esta revisión.

La exploración del catálogo constituye una comprobación inicial útil: permite confirmar la conexión antes de formular consultas basadas en nombres supuestos. Si las tablas o columnas observadas no corresponden al archivo previsto, conviene detener el análisis y revisar la ruta. Habilitar la escritura o cambiar de base no resuelve por sí mismo una selección incorrecta del origen de los datos.

Fuentes consultadas

Secundarias