mcpField
S
Superset MCP Integration

Superset MCP Integration

本地服务
github.com/aptroAI 与智能体19565 周前更新

关于 Superset MCP Integration

Superset MCP Integration 是一个面向 Apache Superset 的 MCP 服务,使 AI Agent 能够以编程方式连接并控制 Superset 实例。它适合希望通过自然语言管理仪表板、图表、数据库和 SQL Lab 的用户,并可在 Claude Desktop 等客户端中使用。

主要功能

  1. 01仪表板与图表的增删改查工具
  2. 02数据库连接与数据集管理工具
  3. 03SQL Lab 查询执行与格式化工具
  4. 04标签管理与权限相关查询工具
  5. 05通过环境变量配置 Superset 连接

适用场景

  1. 01通过自然语言查询并更新 Superset 仪表板
  2. 02在 Superset 中执行 SQL 并导出结果为 CSV
  3. 03管理数据库连接与标签

MCP 相关

该项目是 MCP 服务,向 MCP 客户端暴露大量 Superset 工具,涵盖认证、仪表板、图表、数据库、数据集、SQL Lab、标签等操作。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Superset MCP 集成

smithery badge

用于与 Apache Superset 交互的 MCP 服务,可让 AI Agent 以编程方式连接并控制 Superset 实例。

设置说明

通过 Smithery 安装

通过 Smithery 自动为 Claude Desktop 安装 Superset 集成:

npx -y @smithery/cli install @aptro/superset-mcp --client claude
手动安装
  1. 在本地设置 Superset

    运行此脚本以在本地启动 Superset:

    git clone --branch 4.1.1 --depth 1 https://github.com/apache/superset && \
    cd superset && \
    docker compose -f docker-compose-image-tag.yml up
    

    Superset 启动后,你可以使用默认凭据通过 http://localhost:8088 访问:

    • 用户名:admin
    • 密码:admin
  2. 克隆此存储库

    将此存储库克隆到本地计算机。

  3. 配置环境变量

    在根目录中创建 .env 文件,并填入 Superset 凭据:

    SUPERSET_BASE_URL=http://localhost:8088  # Change to your Superset URL
    SUPERSET_USERNAME=your_username
    SUPERSET_PASSWORD=your_password
    
  4. 安装依赖项

    uv pip install .
    
  5. 安装 Claude MCP 配置

    若要与 Claude Desktop 应用配合使用:

    mcp install main.py
    

与 Claude 配合使用

设置完成后,你可以通过自然语言请求使用 Claude 与 Superset 实例交互。以下是一些示例:

仪表板管理
  • 查看仪表板:“显示我的所有 Superset 仪表板”
  • 获取仪表板详情:“显示 ID 为 5 的仪表板详情”
  • 创建仪表板:“创建一个名为‘Sales Overview’的新仪表板”
  • 更新仪表板:“将仪表板 3 的标题更新为‘Updated Sales Report’”
  • 删除仪表板:“删除 ID 为 7 的仪表板”
图表管理
  • 列出所有图表:“我的 Superset 实例中有哪些图表?”
  • 查看图表详情:“显示 ID 为 10 的图表详情”
  • 创建图表:“使用数据集 3 创建一个新的条形图”
  • 更新图表:“将图表 5 改为使用折线可视化,而不是条形图”
  • 删除图表:“删除 ID 为 12 的图表”
数据库和数据集操作
  • 列出数据库:“显示连接到 Superset 的所有数据库”
  • 列出数据集:“我的 Superset 实例中有哪些可用数据集?”
  • 获取数据库表:“ID 为 1 的数据库中有哪些可用表?”
  • 执行 SQL:“在数据库 1 上运行此 SQL 查询:SELECT * FROM users LIMIT 10”
  • 创建数据集:“从数据库 2 中的表‘customers’创建一个新数据集”
  • 更新数据库:“更新数据库 3 的连接设置”
  • 删除数据库:“删除 ID 为 4 的数据库连接”
  • 验证 SQL:“此 SQL 对数据库 2 是否有效:SELECT * FROM customers JOIN orders”
  • 获取数据库目录:“显示数据库 1 中可用的目录”
  • 获取数据库函数:“数据库 2 中有哪些可用函数?”
  • 检查相关对象:“哪些仪表板和图表使用了数据库 1?”
SQL Lab 功能
  • 执行查询:“运行此 SQL 查询:SELECT COUNT(*) FROM orders”
  • 格式化 SQL:“格式化此 SQL 查询:SELECT id,name,age FROM users WHERE age>21”
  • 估算查询成本:“估算此查询的成本:SELECT * FROM large_table”
  • 获取已保存的查询:“显示我保存的所有 SQL 查询”
  • 获取查询结果:“获取键为 'abc123' 的查询结果”
用户和系统信息
  • 查看用户信息:“我当前以哪个用户身份登录?”
  • 获取用户角色:“我在 Superset 中有哪些角色?”
  • 查看最近活动:“显示我的 Superset 实例中的最近活动”
  • 获取菜单数据:“我可以访问哪些菜单项?”
  • 获取基础 URL:“我连接的 Superset 实例的 URL 是什么?”
标签管理
  • 列出标签:“显示我的 Superset 实例中的所有标签”
  • 创建标签:“创建一个名为‘Finance’的新标签”
  • 删除标签:“删除 ID 为 5 的标签”
  • 为对象添加标签:“将标签‘Finance’添加到仪表板 3”
  • 移除标签:“从图表 7 中移除标签‘Finance’”

可用的 MCP 工具

此插件提供以下 Claude 可使用的 MCP 工具:

身份验证
  • superset_auth_check_token_validity - 检查当前访问令牌是否有效
  • superset_auth_refresh_token - 刷新访问令牌
  • superset_auth_authenticate_user - 使用 Superset 进行身份验证
仪表板
  • superset_dashboard_list - 列出所有仪表板
  • superset_dashboard_get_by_id - 获取指定仪表板
  • superset_dashboard_create - 创建新仪表板
  • superset_dashboard_update - 更新现有仪表板
  • superset_dashboard_delete - 删除仪表板
图表
  • superset_chart_list - 列出所有图表
  • superset_chart_get_by_id - 获取指定图表
  • superset_chart_create - 创建新图表
  • superset_chart_update - 更新现有图表
  • superset_chart_delete - 删除图表
数据库
  • superset_database_list - 列出所有数据库
  • superset_database_get_by_id - 获取指定数据库
  • superset_database_create - 创建新的数据库连接
  • superset_database_get_tables - 列出数据库中的表
  • superset_database_schemas - 获取数据库的架构
  • superset_database_test_connection - 测试数据库连接
  • superset_database_update - 更新现有数据库连接
  • superset_database_delete - 删除数据库连接
  • superset_database_get_catalogs - 获取数据库的目录
  • superset_database_get_connection - 获取数据库连接信息
  • superset_database_get_function_names - 获取数据库支持的函数名称
  • superset_database_get_related_objects - 获取与数据库关联的图表和仪表板
  • superset_database_validate_sql - 验证针对数据库的任意 SQL
  • superset_database_validate_parameters - 验证数据库连接参数
数据集
  • superset_dataset_list - 列出所有数据集
  • superset_dataset_get_by_id - 获取指定数据集
  • superset_dataset_create - 创建新数据集
SQL Lab
  • superset_sqllab_execute_query - 执行 SQL 查询
  • superset_sqllab_get_saved_queries - 列出已保存的 SQL 查询
  • superset_sqllab_format_sql - 格式化 SQL 查询
  • superset_sqllab_get_results - 获取查询结果
  • superset_sqllab_estimate_query_cost - 估算查询成本
  • superset_sqllab_export_query_results - 将查询结果导出为 CSV
  • superset_sqllab_get_bootstrap_data - 获取 SQL Lab 引导数据
查询
  • superset_query_list - 列出所有查询
  • superset_query_get_by_id - 获取指定查询
  • superset_query_stop - 停止正在运行的查询
已保存的查询
  • superset_saved_query_get_by_id - 获取指定的已保存查询
  • superset_saved_query_create - 创建新的已保存查询
用户信息
  • superset_user_get_current - 获取当前用户信息
  • superset_user_get_roles - 获取用户角色
活动
  • superset_activity_get_recent - 获取近期活动数据
系统
  • superset_menu_get - 获取菜单数据
  • superset_config_get_base_url - 获取 Superset 实例的基本 URL
标签
  • superset_tag_list - 列出所有标签
  • superset_tag_create - 创建新标签
  • superset_tag_get_by_id - 获取指定标签
  • superset_tag_objects - 获取与标签关联的对象
  • superset_tag_delete - 删除标签
  • superset_tag_object_add - 为对象添加标签
  • superset_tag_object_remove - 从对象移除标签
探索工具
  • superset_explore_form_data_create - 创建用于图表探索的表单数据
  • superset_explore_form_data_get - 获取用于图表探索的表单数据
  • superset_explore_permalink_create - 创建图表探索的永久链接
  • superset_explore_permalink_get - 获取图表探索的永久链接
高级数据类型
  • superset_advanced_data_type_convert - 将值转换为高级数据类型
  • superset_advanced_data_type_list - 列出可用的高级数据类型

环境变量

变量说明默认值
SUPERSET_BASE_URLSuperset 实例的 URLhttp://localhost:8088
SUPERSET_USERNAMESuperset 的用户名None
SUPERSET_PASSWORDSuperset 的密码None

故障排除

  • 如果遇到身份验证问题,请检查 .env 文件中的凭据
  • 确保 Superset 正在运行,且可通过 .env 文件中指定的 URL 访问
  • 检查你使用的 Superset 版本是否兼容(已使用 4.1.1 版本测试)
  • 确保 MCP 服务使用的端口未被其他应用程序占用

安全说明

  • Superset 凭据仅存储在本地 .env 文件中
  • 访问令牌存储在项目目录中的 .superset_token 文件里
  • 所有身份验证均直接在 MCP 服务与 Superset 实例之间进行
  • 不会向 Claude 或任何第三方传输凭据
  • 用于生产环境时,请考虑使用更安全的身份验证方式

贡献

欢迎贡献!请随时提交 Pull Request。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。