Superset MCP Integration

by aptro
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Uses environment variables for configuration management, storing credentials and connection details securely for Superset integration.

  • Enables interaction with Apache Superset instances, providing tools for managing dashboards, charts, databases, datasets, running SQL queries, and handling tags programmatically.

  • Supports running Superset in Docker containers, making it easy to set up and configure a local Superset instance for integration.

Integración de MCP de superconjunto

Servidor MCP para interactuar con Apache Superset, lo que permite que los agentes de IA se conecten y controlen una instancia de Superset mediante programación.

Instrucciones de configuración

Instalación mediante herrería

Para instalar Superset Integration para Claude Desktop automáticamente a través de Smithery :

npx -y @smithery/cli install @aptro/superset-mcp --client claude

Instalación manual

  1. Configurar Superset localmenteEjecute este script para iniciar Superset localmente:
    git clone --branch 4.1.1 --depth 1 https://github.com/apache/superset && \ cd superset && \ docker compose -f docker-compose-image-tag.yml up
    Una vez que Superset se esté ejecutando, deberías poder acceder a él en http://localhost:8088 con las credenciales predeterminadas:
    • Nombre de usuario: admin
    • Contraseña: admin
  2. Clonar este repositorioClone este repositorio en su máquina local.
  3. Configurar variables de entornoCree un archivo .env en el directorio raíz con sus credenciales de Superset:
    SUPERSET_BASE_URL=http://localhost:8088 # Change to your Superset URL SUPERSET_USERNAME=your_username SUPERSET_PASSWORD=your_password
  4. Instalar dependencias
    uv pip install .
  5. Instalar MCP Config para ClaudePara utilizar con la aplicación Claude Desktop:
    mcp install main.py

Uso con Claude

Tras la configuración, puedes interactuar con tu instancia de Superset a través de Claude mediante solicitudes en lenguaje natural. Aquí tienes algunos ejemplos:

Gestión del panel de control

  • Ver paneles : "Muéstrame todos mis paneles de Superconjuntos"
  • Obtener detalles del panel : "Muéstrame los detalles del panel con ID 5"
  • Crear panel : "Crear un nuevo panel titulado 'Resumen de ventas'"
  • Actualizar el panel : "Actualizar el panel 3 para que tenga el título 'Informe de ventas actualizado'"
  • Eliminar panel : "Eliminar panel con ID 7"

Gestión de gráficos

  • Listar todos los gráficos : "¿Qué gráficos tengo en mi instancia de Superset?"
  • Ver detalles del gráfico : "Muéstrame los detalles del gráfico con ID 10"
  • Crear gráfico : "Crear un nuevo gráfico de barras usando el conjunto de datos 3"
  • Actualizar gráfico : "Actualizar el gráfico 5 para usar una visualización de líneas en lugar de barras"
  • Eliminar gráfico : "Eliminar gráfico con ID 12"

Operaciones con bases de datos y conjuntos de datos

  • Lista de bases de datos : "Muéstrame todas las bases de datos conectadas a Superset"
  • Lista de conjuntos de datos : "¿Qué conjuntos de datos están disponibles en mi instancia de Superconjunto?"
  • Obtener tablas de base de datos : "¿Qué tablas están disponibles en la base de datos con ID 1?"
  • Ejecutar SQL : "Ejecutar esta consulta SQL en la base de datos 1: SELECT * FROM users LIMIT 10"
  • Crear conjunto de datos : "Crear un nuevo conjunto de datos a partir de la tabla 'clientes' en la base de datos 2"
  • Actualizar base de datos : "Actualizar la configuración de conexión para la base de datos 3"
  • Eliminar base de datos : "Eliminar la conexión de base de datos con ID 4"
  • Validar SQL : "¿Es este SQL válido para la base de datos 2: SELECT * FROM clientes JOIN pedidos?"
  • Obtener catálogos de la base de datos : "Muéstrame los catálogos disponibles en la base de datos 1"
  • Obtener funciones de base de datos : "¿Qué funciones están disponibles en la base de datos 2?"
  • Comprobar objetos relacionados : "¿Qué paneles y gráficos utilizan la base de datos 1?"

Características del laboratorio de SQL

  • Ejecutar consultas : "Ejecutar esta consulta SQL: SELECT COUNT(*) FROM orders"
  • Formato SQL : "Formatee esta consulta SQL: SELECT id,name,age FROM users WHERE age>21"
  • Estimar el costo de la consulta : "Estime el costo de esta consulta: SELECT * FROM large_table"
  • Obtener consultas guardadas : "Muéstrame todas mis consultas SQL guardadas"
  • Obtener resultados de la consulta : "Obtener los resultados de la consulta con la clave 'abc123'"

Información del usuario y del sistema

  • Ver información del usuario : "¿Cómo he iniciado sesión?"
  • Obtener roles de usuario : "¿Qué roles tengo en Superset?"
  • Ver actividad reciente : "Muéstrame la actividad reciente en mi instancia de Superset"
  • Obtener datos del menú : "¿A qué elementos del menú tengo acceso?"
  • Obtener URL base : "¿Cuál es la URL de la instancia de Superset a la que estoy conectado?"

Gestión de etiquetas

  • Lista de etiquetas : "Muéstrame todas las etiquetas en mi instancia de Superconjunto"
  • Crear etiqueta : "Crear una nueva etiqueta llamada 'Finanzas'"
  • Eliminar etiqueta : "Eliminar la etiqueta con ID 5"
  • Etiquetar un objeto : "Añadir la etiqueta 'Finanzas' al panel 3"
  • Eliminar etiqueta : "Eliminar la etiqueta 'Finanzas' del gráfico 7"

Herramientas MCP disponibles

Este complemento ofrece las siguientes herramientas MCP que Claude puede usar:

Autenticación

  • superset_auth_check_token_validity : comprueba si el token de acceso actual es válido
  • superset_auth_refresh_token - Actualizar el token de acceso
  • superset_auth_authenticate_user - Autenticarse con Superset

Paneles de control

  • superset_dashboard_list - Lista todos los paneles
  • superset_dashboard_get_by_id - Obtener un panel específico
  • superset_dashboard_create - Crea un nuevo panel
  • superset_dashboard_update - Actualizar un panel existente
  • superset_dashboard_delete - Eliminar un panel

Gráficos

  • superset_chart_list - Lista todos los gráficos
  • superset_chart_get_by_id - Obtener un gráfico específico
  • superset_chart_create - Crea un nuevo gráfico
  • superset_chart_update - Actualizar un gráfico existente
  • superset_chart_delete - Eliminar un gráfico

Bases de datos

  • superset_database_list - Lista todas las bases de datos
  • superset_database_get_by_id - Obtener una base de datos específica
  • superset_database_create - Crea una nueva conexión de base de datos
  • superset_database_get_tables - Listar tablas en una base de datos
  • superset_database_schemas : obtener esquemas para una base de datos
  • superset_database_test_connection - Prueba una conexión a la base de datos
  • superset_database_update - Actualizar una conexión de base de datos existente
  • superset_database_delete - Eliminar una conexión de base de datos
  • superset_database_get_catalogs - Obtener catálogos para una base de datos
  • superset_database_get_connection - Obtener información de conexión a la base de datos
  • superset_database_get_function_names : obtiene los nombres de funciones admitidos por una base de datos
  • superset_database_get_related_objects : obtiene gráficos y paneles asociados con una base de datos
  • superset_database_validate_sql - Valida SQL arbitrario contra una base de datos
  • superset_database_validate_parameters - Validar los parámetros de conexión a la base de datos

Conjuntos de datos

  • superset_dataset_list - Lista todos los conjuntos de datos
  • superset_dataset_get_by_id - Obtener un conjunto de datos específico
  • superset_dataset_create - Crea un nuevo conjunto de datos

Laboratorio de SQL

  • superset_sqllab_execute_query - Ejecutar una consulta SQL
  • superset_sqllab_get_saved_queries - Lista de consultas SQL guardadas
  • superset_sqllab_format_sql - Formatear una consulta SQL
  • superset_sqllab_get_results - Obtener resultados de la consulta
  • superset_sqllab_estimate_query_cost - Estimar el costo de la consulta
  • superset_sqllab_export_query_results - Exportar resultados de consultas a CSV
  • superset_sqllab_get_bootstrap_data : obtener datos de arranque de SQL Lab

Consultas

  • superset_query_list - Lista todas las consultas
  • superset_query_get_by_id - Obtener una consulta específica
  • superset_query_stop - Detener una consulta en ejecución

Consultas guardadas

  • superset_saved_query_get_by_id - Obtener una consulta guardada específica
  • superset_saved_query_create - Crea una nueva consulta guardada

Información del usuario

  • superset_user_get_current - Obtener información del usuario actual
  • superset_user_get_roles - Obtener roles de usuario

Actividad

  • superset_activity_get_recent - Obtener datos de actividad reciente

Sistema

  • superset_menu_get - Obtener datos del menú
  • superset_config_get_base_url : obtiene la URL base de la instancia de Superset

Etiquetas

  • superset_tag_list - Lista todas las etiquetas
  • superset_tag_create - Crea una nueva etiqueta
  • superset_tag_get_by_id - Obtener una etiqueta específica
  • superset_tag_objects - Obtener objetos asociados con etiquetas
  • superset_tag_delete - Eliminar una etiqueta
  • superset_tag_object_add - Agrega una etiqueta a un objeto
  • superset_tag_object_remove - Eliminar una etiqueta de un objeto

Herramientas de exploración

  • superset_explore_form_data_create : crea datos de formulario para la exploración de gráficos
  • superset_explore_form_data_get : obtiene datos del formulario para la exploración de gráficos
  • superset_explore_permalink_create - Crea un enlace permanente para la exploración de gráficos
  • superset_explore_permalink_get - Obtener un enlace permanente para la exploración de gráficos

Tipos de datos avanzados

  • superset_advanced_data_type_convert - Convierte un valor a un tipo de datos avanzado
  • superset_advanced_data_type_list : lista de los tipos de datos avanzados disponibles

Variables de entorno

VariableDescripciónPor defecto
URL BASE DEL SUPERCONJUNTOURL de su instancia de Supersethttp://localhost:8088
SUPERCONJUNTO_NOMBRE_USUARIONombre de usuario para SupersetNinguno
CONTRASEÑA DE SUPERCONJUNTOContraseña para SupersetNinguno

Solución de problemas

  • Si encuentra problemas de autenticación, verifique sus credenciales en el archivo .env
  • Asegúrese de que Superset se esté ejecutando y sea accesible en la URL especificada en su archivo .env
  • Comprueba que estás utilizando una versión compatible de Superset (probada con la versión 4.1.1)
  • Asegúrese de que el puerto utilizado por el servidor MCP no esté siendo utilizado por otra aplicación

Notas de seguridad

  • Sus credenciales de Superset se almacenan únicamente en su archivo .env local
  • El token de acceso se almacena en el archivo .superset_token en el directorio del proyecto
  • Toda la autenticación ocurre directamente entre el servidor MCP y su instancia de Superset
  • No se transmiten credenciales a Claude ni a terceros.
  • Para uso en producción, considere utilizar métodos de autenticación más seguros.

Contribuyendo

¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.

Licencia

Instituto Tecnológico de Massachusetts (MIT)

-
security - not tested
A
license - permissive license
-
quality - not tested

Servidor MCP que permite a los agentes de IA conectarse mediante programación y controlar instancias de Apache Superset, lo que permite a los usuarios administrar paneles, gráficos, bases de datos, conjuntos de datos y ejecutar consultas SQL a través de interacciones en lenguaje natural.

  1. Setup Instructions
    1. Installing via Smithery
    2. Manual Installation
  2. Usage with Claude
    1. Dashboard Management
    2. Chart Management
    3. Database and Dataset Operations
    4. SQL Lab Features
    5. User and System Information
    6. Tag Management
  3. Available MCP Tools
    1. Authentication
    2. Dashboards
    3. Charts
    4. Databases
    5. Datasets
    6. SQL Lab
    7. Queries
    8. Saved Queries
    9. User Information
    10. Activity
    11. System
    12. Tags
    13. Exploration Tools
    14. Advanced Data Types
  4. Environment Variables
    1. Troubleshooting
      1. Security Notes
        1. Contributing
          1. License
            ID: gp1w339os0