Metabase MCP Server
Readme: Metabase MCP Server
Un servidor integral del Model Context Protocol (MCP) para la integración con Metabase, que proporciona a los asistentes de IA acceso completo a la plataforma de analítica de Metabase.
🚀 Inicio rápido
# Install and run with npx
export METABASE_URL=https://your-metabase-instance.com
export METABASE_API_KEY=your_metabase_api_key
npx @cognitionai/metabase-mcp-serverRelated MCP server: Metabase MCP Server
✨ Características
🎯 Más de 81 herramientas disponibles - Cobertura completa de la API de Metabase
📊 Gestión de paneles (23 herramientas) - operaciones CRUD completas, gestión de tarjetas, compartición pública e incrustación
📈 Gestión de tarjetas/preguntas (21 herramientas) - ejecución de consultas, gestión de parámetros, consultas pivot y enlaces públicos
🗄️ Gestión de bases de datos (13 herramientas) - gestión de conexiones, sincronización de esquemas y ejecución de consultas
📋 Gestión de tablas (16 herramientas) - operaciones de metadatos, gestión de campos y operaciones de datos
🔍 Herramientas adicionales (9 herramientas) - colecciones, búsqueda, usuarios, seguimiento de actividad y enlaces de playground
📦 Instalación
💡 Recomendado: Node.js 20.19.0+ y npm 8.0.0+ para una compatibilidad óptima
Método 1: NPX (recomendado)
npx @cognitionai/metabase-mcp-serverMétodo 2: Instalación global
npm install -g @cognitionai/metabase-mcp-server
metabase-mcp-serverMétodo 3: Docker
docker run -it --rm \
-e METABASE_URL=https://your-metabase-instance.com \
-e METABASE_API_KEY=your_metabase_api_key \
ghcr.io/CognitionAI/metabase-mcp-server⚙️ Configuración
Variables de entorno
Autenticación con clave de API (recomendada):
export METABASE_URL=https://your-metabase-instance.com
export METABASE_API_KEY=your_metabase_api_keyAutenticación con usuario/contraseña (alternativa):
export METABASE_URL=https://your-metabase-instance.com
export METABASE_USERNAME=your_username
export METABASE_PASSWORD=your_passwordArgumentos opcionales
El servidor admite argumentos de línea de comandos para personalizar la carga de herramientas:
--essential(predeterminado): carga solo las herramientas esenciales--all: carga las más de 80 herramientas disponibles--write: carga solo las herramientas de escritura/modificación--read: carga solo las herramientas de solo lectura
# Using published package (recommended)
# Default behavior (essential tools only)
npx @cognitionai/metabase-mcp-server
# Load all tools
npx @cognitionai/metabase-mcp-server --all
# Load only write tools
npx @cognitionai/metabase-mcp-server --write
# Load only read-only tools
npx @cognitionai/metabase-mcp-server --read
# Using local development build
npm run build
node dist/server.js # Default (essential tools)
node dist/server.js --all # All tools
node dist/server.js --write # Write tools only
node dist/server.js --read # Read-only tools only🔌 Ejemplos de integración
Claude Desktop
Añade lo siguiente a la configuración de Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json en macOS):
Con el paquete publicado:
{
"mcpServers": {
"metabase": {
"command": "npx",
"args": ["@cognitionai/metabase-mcp-server"],
"env": {
"METABASE_URL": "https://your-metabase-instance.com",
"METABASE_API_KEY": "your_metabase_api_key"
}
}
}
}Con una compilación de desarrollo local:
{
"mcpServers": {
"metabase": {
"command": "node",
"args": ["/path/to/metabase-mcp-server/dist/server.js"],
"env": {
"METABASE_URL": "https://your-metabase-instance.com",
"METABASE_API_KEY": "your_metabase_api_key"
}
}
}
}Con indicadores personalizados:
{
"mcpServers": {
"metabase-all": {
"command": "npx",
"args": ["@cognitionai/metabase-mcp-server", "--all"],
"env": {
"METABASE_URL": "https://your-metabase-instance.com",
"METABASE_API_KEY": "your_metabase_api_key"
}
}
}
}Windsurf IDE
Añade lo siguiente a la configuración de MCP de Windsurf (~/.windsurf/mcp_config.json):
Con el paquete publicado:
{
"mcpServers": {
"metabase": {
"command": "npx",
"args": ["@cognitionai/metabase-mcp-server"],
"env": {
"METABASE_URL": "https://your-metabase-instance.com",
"METABASE_API_KEY": "your_metabase_api_key"
}
}
}
}Con una compilación de desarrollo local:
{
"mcpServers": {
"metabase": {
"command": "node",
"args": ["/path/to/metabase-mcp-server/dist/server.js"],
"env": {
"METABASE_URL": "https://your-metabase-instance.com",
"METABASE_API_KEY": "your_metabase_api_key"
}
}
}
}Con indicadores personalizados:
{
"mcpServers": {
"metabase-read": {
"command": "npx",
"args": ["@cognitionai/metabase-mcp-server", "--read"],
"env": {
"METABASE_URL": "https://your-metabase-instance.com",
"METABASE_API_KEY": "your_metabase_api_key"
}
},
"metabase-write": {
"command": "npx",
"args": ["@cognitionai/metabase-mcp-server", "--write"],
"env": {
"METABASE_URL": "https://your-metabase-instance.com",
"METABASE_API_KEY": "your_metabase_api_key"
}
}
}
}🛠️ Herramientas disponibles
Operaciones principales
list_dashboards- Lista todos los panelesget_dashboard- Obtiene un panel por su IDcreate_dashboard- Crea un nuevo panelupdate_dashboard- Actualiza un panel existentedelete_dashboard- Elimina un panelcopy_dashboard- Copia un panel
Gestión de tarjetas
get_dashboard_cards- Obtiene todas las tarjetas del paneladd_card_to_dashboard- Añade una tarjeta al panelremove_card_from_dashboard- Elimina una tarjeta del panelupdate_dashboard_card- Actualiza la posición o la configuración de la tarjetaexecute_dashboard_card- Ejecuta una tarjeta específica del panel
Compartición pública e incrustación
create_public_link- Crea un enlace público del paneldelete_public_link- Elimina el enlace público del panellist_public_dashboards- Lista los paneles públicoslist_embeddable_dashboards- Lista los paneles incrustables
Parámetros y consultas
get_dashboard_param_values- Obtiene los valores de los parámetrossearch_dashboard_param_values- Busca valores de parámetrosget_dashboard_param_remapping- Obtiene la reasignación de parámetrosexecute_dashboard_query- Ejecuta consultas del panel
Funciones avanzadas
get_dashboard_related- Obtiene el contenido relacionadoget_dashboard_query_metadata- Obtiene los metadatos de la consultaupdate_dashboard_cards- Actualiza tarjetas de forma masivasave_dashboard- Guarda los cambios del panelget_dashboard_items- Obtiene los elementos del panel
Operaciones principales
list_cards- Lista todas las tarjetas/preguntasget_card- Obtiene una tarjeta por su IDcreate_card- Crea una nueva tarjetaupdate_card- Actualiza una tarjeta existentedelete_card- Elimina una tarjetacopy_card- Copia una tarjeta
Ejecución de consultas
execute_card- Ejecuta la consulta de la tarjetaexecute_card_query_with_format- Ejecuta con un formato específicoexecute_pivot_card_query- Ejecuta una consulta pivotget_card_query_metadata- Obtiene los metadatos de la consulta
Gestión de tarjetas
move_cards- Mueve tarjetas entre coleccionesmove_cards_to_collection- Mueve de forma masiva a una colecciónget_card_dashboards- Obtiene los paneles que contienen la tarjetaget_card_series- Obtiene los datos de la serie de la tarjeta
Parámetros y valores
get_card_param_values- Obtiene los valores de los parámetrossearch_card_param_values- Busca valores de parámetrosget_card_param_remapping- Obtiene la reasignación de parámetros
Compartición pública
create_card_public_link- Crea un enlace público de la tarjetadelete_card_public_link- Elimina el enlace público de la tarjetaget_public_cards- Lista las tarjetas públicasget_embeddable_cards- Lista las tarjetas incrustables
Operaciones principales
list_databases- Lista todas las bases de datosget_database- Obtiene los detalles de la base de datoscreate_database- Crea una conexión de base de datosupdate_database- Actualiza la configuración de la base de datosdelete_database- Elimina la conexión de base de datos
Esquema y metadatos
get_database_schema_tables- Obtiene las tablas de la base de datosget_database_schemas- Obtiene los esquemas de la base de datosget_database_metadata- Obtiene los metadatos completossync_database_schema- Sincroniza los metadatos del esquema
Operaciones de consulta
execute_query- Ejecuta consultas SQLexecute_query_export- Ejecuta y exporta los resultados
Mantenimiento
get_database_usage_info- Obtiene estadísticas de usorescan_database_field_values- Vuelve a escanear los valores de los campos
Operaciones principales
list_tables- Lista las tablas con filtradoget_table- Obtiene los detalles de la tablaupdate_table- Actualiza la configuración de la tablaupdate_tables- Actualiza tablas de forma masiva
Operaciones de datos
get_table_data- Recupera los datos de la tablaappend_csv_to_table- Añade datos CSVreplace_table_csv- Reemplaza con datos CSV
Esquema y relaciones
get_table_query_metadata- Obtiene los metadatos de la consultaget_table_fks- Obtiene las relaciones de claves foráneasget_table_related- Obtiene las tablas relacionadassync_table_schema- Sincroniza el esquema de la tabla
Gestión de campos
reorder_table_fields- Reordena la visualización de los camposrescan_table_field_values- Vuelve a escanear los valores de los camposdiscard_table_field_values- Descarta los valores almacenados en caché
Integración de tarjetas
get_card_table_fks- Obtiene las claves foráneas de la tabla de la tarjetaget_card_table_query_metadata- Obtiene los metadatos de la tabla de la tarjeta
Colecciones
list_collections- Lista todas las coleccionescreate_collection- Crea una nueva colecciónupdate_collection- Actualiza la coleccióndelete_collection- Elimina la colecciónget_collection_items- Obtiene los elementos de la colección
Búsqueda y descubrimiento
search_content- Busca en todo el contenido
Actividad y analítica
get_recent_views- Obtiene la actividad recienteget_popular_items- Obtiene el contenido popular
Enlaces de playground
get_metabase_playground_link- Genera enlaces interactivos de playground
🧪 Desarrollo
Configuración inicial
git clone https://github.com/CognitionAI/metabase-mcp-server.git
cd metabase-mcp-server
npm installCompilación
npm run buildModo de desarrollo
npm run watchDepuración
Usa MCP Inspector para la depuración:
npm run inspector🔍 Probar la autenticación
Autenticación con clave de API
Configura
METABASE_URLyMETABASE_API_KEYInicia el servidor y verifica que aparece "Using Metabase API Key" en los registros
Prueba con la herramienta
list_dashboards
Autenticación con usuario/contraseña
Elimina
METABASE_API_KEYConfigura
METABASE_URL,METABASE_USERNAMEyMETABASE_PASSWORDInicia el servidor y verifica que aparece "Using username/password" en los registros
Prueba con la herramienta
list_dashboards
🐛 Solución de problemas
Problemas comunes
Errores de autenticación:
Verifica que tu URL de Metabase sea accesible
Comprueba la validez de la clave de API en la configuración de administración de Metabase
Asegúrate de que las credenciales de usuario/contraseña sean correctas
Problemas de conexión:
Confirma que la instancia de Metabase está en ejecución
Comprueba la conectividad de red
Verifica los certificados SSL si usas HTTPS
Errores de ejecución de herramientas:
Comprueba los permisos de Metabase para tu usuario o clave de API
Verifica que el recurso solicitado existe
Revisa los registros del servidor para ver mensajes de error detallados
📄 Licencia
Este proyecto está licenciado bajo la licencia MIT. Consulta el archivo LICENSE para obtener más detalles.
🤝 Contribuciones
¡Las contribuciones son bienvenidas! Visita nuestro repositorio de GitHub para:
🐛 Informar de errores
💡 Solicitar funcionalidades
🔧 Enviar pull requests
📖 Mejorar la documentación
Directrices de desarrollo
Haz un fork del repositorio
Crea una rama de funcionalidad
Realiza tus cambios con pruebas
Asegúrate de que todas las pruebas pasan
Envía un pull request
🆘 Soporte
Hecho con ❤️ para el mundo
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with Metabase analytics platform, allowing them to query databases, execute SQL, manage dashboards and cards, and access analytics data through natural language.61MIT
- AlicenseNot gradedqualityDmaintenanceProvides AI assistants with full access to Metabase analytics platform, enabling dashboard and card management, database queries, and schema operations through natural language.3,223MIT
- FlicenseAqualityDmaintenanceEnables AI to create and manage Apache Superset dashboards, including adding charts and native filters from datasets.17
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to create interactive charts, diagrams, and tables displayed on a real-time dashboard, supporting multiple data sources with privacy-focused local execution.1MIT
Related MCP Connectors
AI-native team workspace — tables, documents, workflow automation, live dashboards & analytics
Manage AI assistants, history, calls, campaigns, contacts, knowledge, messaging, and automations.
Connect your AI assistants to Keboola and expose your data, transformations, SQL queries, ...
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/zbzq8ztx22-star/metabase-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server