超级集MCP集成
](https://smithery.ai/server/@aptro/superset-mcp)
MCP服务器,用于与Apache Superset交互,使AI代理能够以编程方式连接和控制Superset实例。
安装说明
通过Smithery安装
通过以下方式自动安装Claude Desktop的Superset Integration 史密瑟里:
npx -y @smithery/cli install @aptro/superset-mcp --client claude手动安装
- 在本地设置超级设置
运行此脚本以在本地启动Superset:
git clone --branch 4.1.1 --depth 1 https://github.com/apache/superset && \
cd superset && \
docker compose -f docker-compose-image-tag.yml upSuperset运行后,您应该可以在以下位置访问它http://localhost:8088使用默认凭据:
- 用户名:admin - 密码:admin
- 克隆此存储库
将此存储库克隆到本地计算机。
- 配置环境变量
创建一个 .env 根目录中包含Superset凭据的文件:
SUPERSET_BASE_URL=http://localhost:8088 # Change to your Superset URL
SUPERSET_USERNAME=your_username
SUPERSET_PASSWORD=your_password- 再进行
uv pip install .- 为Claude安装MCP配置
要与Claude Desktop应用程序一起使用:
mcp install main.py与Claude一起使用
设置后,您可以使用自然语言请求通过Claude与Superset实例进行交互。以下是一些示例:
仪表板管理
- 查看仪表板:“显示我的所有Superset仪表板”
- 获取仪表板详细信息:“显示ID为5的仪表板的详细信息”
- 创建仪表板:“创建一个名为“销售概述”的新仪表板”
- 更新仪表板:“更新仪表板3,使其标题为“更新的销售报告””
- 删除仪表板:“删除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客户加入订单有效吗?”
- 获取数据库目录:“显示数据库1中可用的目录”
- 获取数据库函数:“数据库2中有哪些功能?”
- 检查相关对象:“哪些仪表板和图表使用数据库1?”
SQL实验室功能
- 执行查询:“运行此SQL查询:从订单中选择COUNT(\*)”
- 设置SQL格式:“设置此SQL查询的格式:从年龄>21岁的用户中选择id、name、age”
- 估算查询成本:“估算此查询的成本:SELECT\*FROM large_table”
- 获取已保存的查询:“显示我保存的所有SQL查询”
- 获取查询结果:“使用键'abc123'获取查询结果”
用户和系统信息
- 查看用户信息:“我以谁的身份登录?”
- 获取用户角色:“我在Superset中扮演什么角色?”
- 查看最近的活动:“显示Superset实例中的最近活动”
- 获取菜单数据:“我可以访问哪些菜单项?”
- 获取基本URL:“我连接到的Superset实例的URL是什么?”
标签管理
- 列表标记:“显示Superset实例中的所有标签”
- 创建标签:“创建一个名为‘Finance’的新标签”
- 删除标记:“删除ID为5的标签”
- 标记对象:“将标签‘Finance’添加到仪表板3”
- 删除标记:“从图表7中删除标签‘财务’”
可用的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-根据数据库验证任意SQLsuperset_database_validate_parameters-验证数据库连接参数
数据集
superset_dataset_list-列出所有数据集superset_dataset_get_by_id-获取特定数据集superset_dataset_create-创建新数据集
SQL实验室
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-将查询结果导出到CSVsuperset_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_URL | 您的SUPERSET实例的URL | http://localhost:8088 |
| SUPERSET_USENAME | 超级集的用户名 | 无 |
| SUPERSET_PASSWORD | 超级集密码 | 无 |
故障排除
- 如果遇到身份验证问题,请在
.env文件 - 确保Superset正在运行,并且可以在您的
.env文件 - 检查您是否使用兼容版本的Superset(使用4.1.1版本测试)
- 确保MCP服务器使用的端口未被其他应用程序使用
安全说明
- 您的Superset凭据仅存储在您的本地
.env文件 - 访问令牌存储在
.superset_token项目目录中的文件 - 所有身份验证都直接在MCP服务器和Superset实例之间进行
- 不会将凭据传输给Claude或任何第三方
- 对于生产使用,考虑使用更安全的身份验证方法
贡献
欢迎投稿!请随时提交拉取请求。
许可证
麻省理工学院
