Skip to main content
Glama

superset-mcp

MCP-сервер (Model Context Protocol) для Apache Superset. Предоставляет ИИ-ассистентам полный доступ к вашему экземпляру Superset — дашбордам, графикам, наборам данных, базам данных и выполнению SQL-запросов.

Предварительные требования

  • uv — менеджер пакетов Python

  • Доступ к работающему экземпляру Apache Superset

Related MCP server: Zaturn

Настройка (занимает ~1 минуту)

1. Клонируйте репозиторий

git clone <repo-url>
cd superset-mcp

2. Настройте учетные данные

cp .env.example .env

Отредактируйте файл .env:

SUPERSET_URL=http://your-superset-host:8088
SUPERSET_USERNAME=your-username
SUPERSET_PASSWORD=your-password

3. Проверьте работоспособность

uv run superset-mcp

Вы должны увидеть, что MCP-сервер запустился без ошибок. Нажмите Ctrl+C для остановки.


Подключение к вашему ИИ-клиенту

Замените /ABSOLUTE/PATH/TO/superset-mcp на фактический путь, по которому вы клонировали репозиторий.

Claude Code

Добавьте в ~/.claude/settings.json (или в .claude/settings.json на уровне проекта):

{
  "mcpServers": {
    "superset": {
      "command": "uv",
      "args": ["--directory", "/ABSOLUTE/PATH/TO/superset-mcp", "run", "superset-mcp"],
      "env": {
        "SUPERSET_URL": "http://your-superset-host:8088",
        "SUPERSET_USERNAME": "your-username",
        "SUPERSET_PASSWORD": "your-password"
      }
    }
  }
}

Или выполните в терминале:

claude mcp add superset -- uv --directory /ABSOLUTE/PATH/TO/superset-mcp run superset-mcp

Claude Desktop

Добавьте в ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) или %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "superset": {
      "command": "uv",
      "args": ["--directory", "/ABSOLUTE/PATH/TO/superset-mcp", "run", "superset-mcp"],
      "env": {
        "SUPERSET_URL": "http://your-superset-host:8088",
        "SUPERSET_USERNAME": "your-username",
        "SUPERSET_PASSWORD": "your-password"
      }
    }
  }
}

Cursor

Добавьте в .cursor/mcp.json в вашем проекте или глобально в ~/.cursor/mcp.json:

{
  "mcpServers": {
    "superset": {
      "command": "uv",
      "args": ["--directory", "/ABSOLUTE/PATH/TO/superset-mcp", "run", "superset-mcp"],
      "env": {
        "SUPERSET_URL": "http://your-superset-host:8088",
        "SUPERSET_USERNAME": "your-username",
        "SUPERSET_PASSWORD": "your-password"
      }
    }
  }
}

Доступные инструменты

Дашборды

Инструмент

Описание

list_dashboards

Список всех дашбордов (с опциональным поиском)

get_dashboard

Получить дашборд по ID или слагу

get_dashboard_charts

Получить все графики на дашборде

get_dashboard_datasets

Получить все наборы данных, используемые на дашборде

create_dashboard

Создать новый дашборд

update_dashboard

Обновить заголовок, макет, метаданные

publish_dashboard

Опубликовать черновик дашборда

copy_dashboard

Дублировать дашборд

delete_dashboard

Удалить дашборд

Графики

Инструмент

Описание

list_charts

Список всех графиков (с опциональным поиском)

get_chart

Получить график по ID или UUID

get_chart_data

Получить последние данные для графика

create_chart

Создать новый график

update_chart

Обновить свойства графика

delete_chart

Удалить график

Наборы данных

Инструмент

Описание

list_datasets

Список всех наборов данных

get_dataset

Получить набор данных по ID или UUID

create_dataset

Создать из таблицы или SQL-запроса

get_or_create_dataset

Получить существующий или создать новый

refresh_dataset

Синхронизировать столбцы из исходной таблицы

update_dataset

Обновить свойства набора данных

get_dataset_related_objects

Посмотреть, какие графики/дашборды его используют

delete_dataset

Удалить набор данных

Базы данных

Инструмент

Описание

list_databases

Список всех подключений к базам данных

get_database

Получить подключение к базе данных по ID

list_schemas

Список схем в базе данных

list_tables

Список таблиц в схеме

get_table_metadata

Получить информацию о столбцах таблицы

get_select_star

Получить шаблон SELECT * для таблицы

SQL

Инструмент

Описание

execute_sql

Выполнить SQL-запрос и получить результаты

format_sql

Красивое форматирование SQL-запроса

estimate_query_cost

Оценить стоимость запроса (если поддерживается)

list_saved_queries

Список сохраненных SQL-запросов

save_query

Сохранить SQL-запрос


Примеры запросов

После подключения к вашему ИИ-ассистенту:

  • "List all published dashboards"

  • "Create a new dashboard called 'Sales Overview'"

  • "Show me all charts in dashboard 11"

  • "Run a SQL query on database 2: SELECT count() FROM orders"*

  • "What datasets are used by the 'Revenue' dashboard?"

  • "Create a bar chart using dataset 5 showing sales by region"

Available Tools

34 tools
copy_dashboardC

Create a copy of a dashboard.

Inputs: id_or_slug (required). Returns: object

create_chartC

Create a new chart.

Inputs: slice_name (required), viz_type (required), datasource_id (required), datasource_type, +3 more. Returns: object

create_dashboardC

Create a new dashboard.

Inputs: title (required), slug, published, json_metadata, +1 more. Returns: object

create_datasetB

Create a dataset from a table or SQL query.

Inputs: database_id (required), table_name (required), schema, sql, +1 more. Returns: object

delete_chartC

Delete a chart by ID.

Inputs: pk (required). Returns: object

delete_dashboardC

Delete a dashboard by ID.

Inputs: pk (required). Returns: object

delete_datasetB

Delete a dataset by ID.

Inputs: pk (required). Returns: object

estimate_query_costC

Estimate the cost of running a SQL query (supported databases only).

Inputs: database_id (required), sql (required), schema. Returns: object

execute_sqlB

Execute a SQL query and return results.

Inputs: database_id (required), sql (required), schema, limit. Returns: object

format_sqlB

Format/pretty-print a SQL query.

Inputs: sql (required). Returns: object

get_chartC

Get a chart by ID or UUID.

Inputs: id_or_uuid (required). Returns: object

get_chart_dataC

Fetch the latest data for a chart.

Inputs: pk (required). Returns: object

get_dashboardB

Get a single dashboard by ID or slug.

Inputs: id_or_slug (required). Returns: object

get_dashboard_chartsB

Get all charts in a dashboard.

Inputs: id_or_slug (required). Returns: object

get_dashboard_datasetsB

Get all datasets used by a dashboard.

Inputs: id_or_slug (required). Returns: object

get_databaseB

Get a database connection by ID.

Inputs: pk (required). Returns: object

get_datasetB

Get a dataset by ID or UUID.

Inputs: id_or_uuid (required). Returns: object

get_or_create_datasetB

Get an existing dataset or create it if it doesn't exist.

Inputs: database_id (required), table_name (required), schema. Returns: object

get_select_starC

Get a SELECT * query for a table (with schema).

Inputs: database_id (required), table_name (required), schema. Returns: object

get_table_metadataC

Get column metadata for a table.

Inputs: database_id (required), table_name (required), schema. Returns: object

list_chartsC

List charts. Optionally filter by name.

Inputs: page, page_size, search. Returns: object

list_dashboardsB

List dashboards. Optionally filter by title with search.

Inputs: page, page_size, search. Returns: object

list_databasesB

List all database connections configured in Superset.

Inputs: page, page_size. Returns: object

list_datasetsC

List datasets (virtual or physical tables).

Inputs: page, page_size, search. Returns: object

list_saved_queriesB

List saved SQL queries.

Inputs: page, page_size. Returns: object

list_schemasB

List all schemas in a database.

Inputs: database_id (required). Returns: object

list_tablesB

List tables in a database schema.

Inputs: database_id (required), schema. Returns: object

publish_dashboardC

Set a dashboard as published.

Inputs: pk (required). Returns: object

refresh_datasetC

Refresh the dataset's columns and metrics from the source.

Inputs: pk (required). Returns: object

save_queryC

Save a SQL query.

Inputs: label (required), sql (required), database_id (required), schema, +1 more. Returns: object

update_chartC

Update a chart's properties.

Inputs: pk (required), slice_name, description, viz_type, +2 more. Returns: object

update_dashboardC

Update an existing dashboard.

Inputs: pk (required), title, published, json_metadata, +1 more. Returns: object

update_datasetC

Update a dataset's properties.

Inputs: pk (required), table_name, description, sql, +3 more. Returns: object

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.2/5.0

    Scored across 34 tools

    Disambiguation5/5

    Every tool has a clearly distinct purpose targeting specific resources (charts, dashboards, datasets, databases, queries) and actions (create, get, list, update, delete, execute, format, etc.), with no apparent overlap or ambiguity. For example, get_chart, get_chart_data, and list_charts serve different functions without confusion.

    Naming Consistency5/5

    Tool names follow a highly consistent verb_noun pattern throughout, such as create_chart, delete_dashboard, list_datasets, and update_dataset, with no deviations in style or convention. This predictability makes the tool set easy to navigate and understand.

    Tool Count3/5

    With 34 tools, the count is borderline high for typical MCP server scopes, which often range from 3-15 tools. While it covers a comprehensive Superset domain, it may feel heavy and potentially overwhelming for agents, though not extreme like 50+ tools.

    Completeness5/5

    The tool surface provides complete CRUD/lifecycle coverage for charts, dashboards, datasets, and queries, along with execution, formatting, and metadata operations. There are no obvious gaps; agents can perform all core workflows from creation to deletion and analysis without dead ends.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      B
      quality
      D
      maintenance
      MCP server enabling AI agents to programmatically connect to and control Apache Superset instances, allowing users to manage dashboards, charts, databases, datasets, and run SQL queries through natural language interactions.
      60
      195
      MIT
    • A
      license
      A
      quality
      C
      maintenance
      An open-source MCP server that connects to various data sources (SQL databases, CSV, Parquet files), allowing AI models to execute SQL queries and generate data visualizations for analytics and business intelligence.
      12
      76
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      An MCP server for Apache Superset that enables AI models to manage dashboards, create charts with auto-detection, and execute SQL queries programmatically. It utilizes stateless HTTP transport to ensure compatibility with integration tools like Open WebUI.
      136 npm
      MIT
    • A
      license
      A
      quality
      D
      maintenance
      An MCP server that enables AI assistants to query databases, execute SQL, and manage Metabase resources like dashboards, cards, and collections through natural language.
      22
      MIT