Metabase MCP Server
Integra asistentes de IA con la plataforma de inteligencia empresarial y análisis Metabase.
Documentación
Metabase MCP Server
Un servidor de Model Context Protocol que integra asistentes de IA con la plataforma de analítica de Metabase.
Descripción general
Este servidor MCP proporciona integración con la API de Metabase, permitiendo que los LLM con capacidades MCP interactúen directamente con tus datos de analítica. Este servidor actúa como un puente entre tu plataforma de analítica y la IA conversacional.
Características principales
- Acceso a recursos: Navega por los recursos de Metabase mediante URIs intuitivas
metabase:// - Dos métodos de autenticación: Soporte tanto para autenticación basada en sesión como por clave de API
- Acceso estructurado a datos: Respuestas en formato JSON para un fácil consumo por parte de asistentes de IA
- Registro exhaustivo: Registro detallado para facilitar la depuración y el monitoreo
- Manejo de errores: Manejo robusto de errores con mensajes de error claros
Herramientas disponibles
El servidor expone las siguientes herramientas para asistentes de IA:
Herramientas de acceso a datos
list_dashboards: Recupera todos los paneles disponibles en tu instancia de Metabaselist_cards: Obtén todas las preguntas/tarjetas guardadas en Metabaselist_databases: Consulta todas las fuentes de base de datos conectadaslist_collections: Lista todas las colecciones en Metabaselist_tables: Lista todas las tablas en una base de datos específicaget_table_fields: Obtén todos los campos/columnas en una tabla específica
Herramientas de ejecución
execute_card: Ejecuta preguntas guardadas y recupera resultados con parámetros opcionalesexecute_query: Ejecuta consultas SQL personalizadas contra cualquier base de datos conectada
Gestión de paneles
get_dashboard_cards: Extrae todas las tarjetas de un panel específicocreate_dashboard: Crea un nuevo panel con el nombre y los parámetros especificadosupdate_dashboard: Actualiza el nombre, la descripción o los parámetros de un panel existentedelete_dashboard: Elimina un paneladd_card_to_dashboard: Añade o actualiza tarjetas en un panel con especificaciones de posición y asignación opcional de pestañas
Gestión de tarjetas/preguntas
create_card: Crea una nueva pregunta/tarjeta con consulta SQLupdate_card_visualization: Actualiza la configuración de visualización de una tarjeta
Gestión de colecciones
create_collection: Crea una nueva colección para organizar paneles y preguntas
Configuración
El servidor admite dos métodos de autenticación:
Opción 1: Autenticación con nombre de usuario y contraseña
# Required
METABASE_URL=https://your-metabase-instance.com
METABASE_USER_EMAIL=your_email@example.com
METABASE_PASSWORD=your_password
# Optional
LOG_LEVEL=info # Options: debug, info, warn, error, fatal
Opción 2: Autenticación con clave de API (recomendada para producción)
# Required
METABASE_URL=https://your-metabase-instance.com
METABASE_API_KEY=your_api_key
# Optional
LOG_LEVEL=info # Options: debug, info, warn, error, fatal
Puedes configurar estas variables de entorno directamente o usar un archivo .env con dotenv.
Implementación con Smithery
Para usar este servidor MCP con Claude u otros asistentes de IA, haz un fork de este repositorio e impleméntalo usando Smithery:
Pasos para implementar:
- Haz un fork de este repositorio en tu cuenta de GitHub
- Ve a Smithery y conéctate con tu cuenta de GitHub
- Implementa el repositorio bifurcado a través de la interfaz de Smithery
Integración con Claude Desktop
Configura tu Claude Desktop para usar la versión alojada en Smithery:
MacOS: Edita ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: Edita %APPDATA%/Claude/claude_desktop_config.json
Autenticación con clave de API:
{
"mcpServers": {
"metabase-mcp": {
"command": "npx",
"args": [
"-y",
"@smithery/cli@latest",
"run",
"YOUR_GITHUB_USERNAME/metabase-mcp-server",
"--config",
"{\"metabaseUrl\":\"https://your-metabase-instance.com\",\"metabaseApiKey\":\"your_api_key\",\"metabasePassword\":\"\",\"metabaseUserEmail\":\"\"}"
]
}
}
}
Autenticación con nombre de usuario y contraseña:
{
"mcpServers": {
"metabase-mcp": {
"command": "npx",
"args": [
"-y",
"@smithery/cli@latest",
"run",
"YOUR_GITHUB_USERNAME/metabase-mcp-server",
"--config",
"{\"metabaseUrl\":\"https://your-metabase-instance.com\",\"metabaseApiKey\":\"\",\"metabasePassword\":\"your_password\",\"metabaseUserEmail\":\"your_email@example.com\"}"
]
}
}
}
Consideraciones de seguridad
- Se recomienda usar autenticación con clave de API para entornos de producción
- Mantén tus claves de API y credenciales seguras
- Considera usar variables de entorno en lugar de codificar credenciales directamente
- Aplica medidas de seguridad de red apropiadas para restringir el acceso a tu instancia de Metabase
Contribuciones
¡Las contribuciones son bienvenidas! No dudes en enviar un Pull Request.