Integrations
Provides containerized deployment of the MCP server through Docker and Docker Compose, enabling easy setup and configuration.
Allows AI assistants to interact with Metabase databases and actions, including listing and exploring databases, retrieving metadata about schemas and tables, visualizing table relationships, running SQL queries, and executing Metabase actions with parameters.
Servidor MCP de Metabase
Un servidor de Protocolo de Control de Modelos (MCP) que permite a los asistentes de IA interactuar con bases de datos y acciones de Metabase.
![Servidor MCP de metabase]
Descripción general
El servidor MCP de Metabase proporciona un puente entre los asistentes de IA y Metabase, lo que permite que los modelos de IA:
- Enumere y explore las bases de datos configuradas en Metabase
- Recupere metadatos detallados sobre esquemas, tablas y campos de bases de datos
- Visualizar relaciones entre tablas en una base de datos
- Enumerar y ejecutar acciones de Metabase
- Realizar operaciones en datos de Metabase a través de una API segura
Este servidor implementa la especificación [Model Control Protocol (MCP)], lo que lo hace compatible con asistentes de IA que admiten herramientas MCP.
Características
- Exploración de bases de datos : enumera todas las bases de datos y explora sus esquemas
- Recuperación de metadatos : obtenga información detallada sobre tablas, campos y relaciones
- Visualización de relaciones : genere representaciones visuales de relaciones de bases de datos
- Gestión de acciones : enumerar, ver detalles y ejecutar acciones de la Metabase
- Manejo seguro de claves API : almacene las claves API cifradas y evite la exposición
- Interfaz web : pruebe y depure la funcionalidad a través de una interfaz web fácil de usar
- Compatibilidad con Docker : Implementación sencilla con Docker y Docker Compose
Prerrequisitos
- Instancia de metabase (se recomienda v0.46.0 o superior)
- Clave API de Metabase con permisos adecuados
- Docker (para implementación en contenedores)
- Python 3.10+ (para desarrollo local)
Instalación
Uso de Docker (recomendado)
- Clonar este repositorio:Copy
- Construya y ejecute el contenedor Docker:Copy
- Acceda a la interfaz de configuración en http://localhost:5001
Instalación manual
- Clonar este repositorio:Copy
- Instalar dependencias:Copy
- Ejecute la interfaz de configuración:Copy
- Acceda a la interfaz de configuración en http://localhost:5000
Configuración
- Abra la interfaz web en su navegador
- Ingrese la URL de su Metabase (por ejemplo, http://localhost:3000 )
- Ingrese su clave API de Metabase
- Haga clic en "Guardar configuración" y pruebe la conexión
Obtención de una clave API de Metabase
- Inicie sesión en su instancia de Metabase como administrador
- Vaya a Configuración > Configuración de administrador > Claves API
- Cree una nueva clave API con los permisos adecuados
- Copiar la clave generada para usarla en el servidor MCP
Uso
Ejecución del servidor MCP
Después de la configuración, puede ejecutar el servidor MCP:
Herramientas disponibles
El servidor MCP proporciona las siguientes herramientas a los asistentes de IA:
- list_databases : Lista todas las bases de datos configuradas en Metabase
- get_database_metadata : Obtener metadatos detallados para una base de datos específica
- db_overview : Obtenga una descripción general de alto nivel de todas las tablas de una base de datos
- table_detail : Obtener información detallada sobre una tabla específica
- visualize_database_relationships : Genera una representación visual de las relaciones de la base de datos
- run_database_query : ejecuta una consulta SQL contra una base de datos
- list_actions : Lista todas las acciones configuradas en Metabase
- get_action_details : Obtener información detallada sobre una acción específica
- execute_action : Ejecuta una acción de Metabase con parámetros
Herramientas de prueba a través de la interfaz web
La interfaz web proporciona un área de prueba para cada herramienta:
- Lista de bases de datos : Ver todas las bases de datos configuradas en Metabase
- Obtener metadatos de la base de datos : ver información detallada del esquema de una base de datos
- Descripción general de la base de datos : vea una lista concisa de todas las tablas de una base de datos
- Detalle de la tabla : Ver información detallada sobre una tabla específica
- Visualizar relaciones de bases de datos : generar una representación visual de las relaciones de las tablas
- Ejecutar consulta : ejecuta consultas SQL en bases de datos
- Lista de acciones : Ver todas las acciones configuradas en Metabase
- Obtener detalles de la acción : ver información detallada sobre una acción específica
- Ejecutar acción : prueba la ejecución de una acción con parámetros
Consideraciones de seguridad
- Las claves API se almacenan cifradas en reposo
- La interfaz web nunca muestra claves API en texto sin formato
- Todas las solicitudes de API utilizan HTTPS cuando se configuran con una URL de Metabase segura
- El servidor debe implementarse detrás de un proxy seguro en entornos de producción.
Desarrollo
Estructura del proyecto
Agregar nuevas herramientas
Para agregar una nueva herramienta:
- Implementar la función de la herramienta en
src/tools/
- Registre la herramienta en
src/server/mcp_server.py
- Agregue una interfaz de prueba en
templates/config.html
(opcional) - Agregue una ruta en
src/server/web_interface.py
(si agrega una interfaz de prueba)
Solución de problemas
Problemas comunes
- Error de conexión : asegúrese de que la URL de su metabase sea correcta y accesible
- Error de autenticación : Verifique que su clave API tenga los permisos necesarios
- Problemas de red de Docker : al usar Docker, asegúrese de tener una configuración de red adecuada
Registros
Consulte los registros para obtener información detallada del error:
Contribuyendo
¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.
This server cannot be installed
Un servidor de Protocolo de Control de Modelos que permite a los asistentes de IA interactuar con las bases de datos de Metabase, lo que permite que los modelos exploren esquemas de bases de datos, recuperen metadatos, visualicen relaciones y ejecuten acciones.