
MCP Superset
io.github.bintocher由 GitHub 账号 bintocher 发布v0.2.3更新于 Oct 24, 2026
Apache Superset MCP server — 135+ tools for dashboards, charts, datasets, SQL Lab, and security
概览
本地 MCP 服务器,为 AI 助手提供 137 个工具来管理 Apache Superset 实例,涵盖仪表板、图表、数据集、SQL Lab、用户、角色和行级安全。
- 可以做什么
- 列出、创建、更新、复制、发布、导出和导入仪表板,包括原生筛选器和嵌入模式设置;管理图表及其数据与缓存预热;注册数据库和数据集,测试连接,查看 schema 和表,刷新或复制数据集并以 ZIP 导出导入;执行只读 SQL Lab 查询、获取结果、估算成本、导出 CSV 并管理已保存查询;管理用户、角色、权限、用户组和行级安全,包括批量角色变更、仪表板访问授权/撤销和权限审计矩阵;管理标签、定时报告、注释、审计日志以及整实例资产导出导入。
- 适用场景
- 适合管理或基于 Apache Superset 开展工作的场景:希望助手查看和修改仪表板、数据集与 SQL Lab 查询,或处理用户、角色和行级安全管理,而不必在 Superset 界面中逐项操作。
- 运行要求
- 以 Python 包形式在本地运行(pip 或 uvx,支持 stdio 或 HTTP/SSE)。需要可访问的 Superset 实例,以及 SUPERSET_BASE_URL、SUPERSET_USERNAME 和 SUPERSET_PASSWORD 变量;完整 API 访问需要 Superset 管理员用户。受 SSO 保护的实例可改用浏览器会话 cookie。已在 Superset 6.0.1 上测试。
安装
在 SourceWeft 中
- 打开 控制台中的 MCP Superset,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
mcp-superset
[PyPI version] [PyPI downloads] [Python 3.12+] [License: MIT] [CI] [CodeQL]
[Superset 6.0.1] [MCP] [Typed] [Ruff] [uv] [Tools: 137] [GitHub stars]
A comprehensive Model Context Protocol (MCP) server for Apache Superset. Gives AI assistants (Claude, GPT, etc.) full control over your Superset instance — dashboards, charts, datasets, SQL Lab, users, roles, RLS, and more — through 137 tools.
Comparison with Other Superset MCP Servers
Key differentiators:
- Only MCP server with full security management (users, roles, RLS, groups, permissions audit)
- Only one with built-in safety validations (confirmation flags, DDL/DML blocking)
- Only one with dashboard native filter management
- Only one with automatic datasource_access synchronization
- Only one with multiple transport options (HTTP, SSE, stdio)
- Only one with configurable CLI (
--host,--port,--transport,--env-file)
Features
- 137 MCP tools covering the complete Superset REST API
- Dashboard management — CRUD, copy, publish/unpublish, export/import, embedded mode, native filters
- Chart management — CRUD, copy, data retrieval, export/import, cache warmup
- Database management — CRUD, connection testing, schema/table introspection, SQL validation
- Dataset management — CRUD, duplicate, schema refresh, export/import
- SQL Lab — query execution, formatting, cost estimation, results & CSV export
- Security — users, roles, permissions, Row Level Security (RLS), groups
- Access control automation — grant/revoke dashboard access with automatic datasource permission sync
- Audit — comprehensive permissions matrix (user x dashboards x datasets x RLS)
- Tags, reports, annotations, saved queries — full CRUD
- Asset export/import — full instance backup and restore
- Built-in safety — confirmation flags for destructive operations, DDL/DML blocking in SQL Lab
- JWT authentication with automatic token refresh and CSRF handling
- Streamable HTTP, SSE, and stdio transports
Quick Start
Installation
Configuration
Create a .env file in the current directory, or set environment variables:
Session-cookie authentication (SSO/OAuth)
When Superset is behind SSO (OAuth/OIDC/SAML), password login via the REST API is unavailable. Instead, supply a browser session cookie:
Copy the cookie from your browser's dev tools (Application → Cookies →
your Superset domain → session). The MCP server sends it on every request
and fetches CSRF tokens with it. The session cannot be renewed server-side,
so when it expires you must paste a fresh value and restart the server.
Two things worth checking before you use this mode:
- The cookie name is not always
session. Instances that setSESSION_COOKIE_NAMEinsuperset_config.pyuse a different name (s, for example). Use the name shown in dev tools and setSUPERSET_SESSION_COOKIE_NAMEaccordingly. - The instance must accept session authentication on
/api/v1/. Where the REST API is configured for JWT only, requests carrying a valid session cookie still return401 {"msg": "Missing Authorization Header"}- refreshing the cookie will not help, and JWT mode is the only option there.
Treat the cookie as a credential: it grants full access to your Superset
account for the lifetime of the session. Keep it in .env (which is
gitignored), not in shell history or committed config.
Running
CLI Options
Connecting to MCP Clients
Claude Code
Add to your project's .mcp.json:
Then start the server: mcp-superset or uvx mcp-superset.
Claude Desktop
Add to claude_desktop_config.json:
Cursor / Windsurf
Other MCP Clients
Any MCP-compatible client can connect via:
- Streamable HTTP:
http://<host>:<port>/mcp - SSE:
http://<host>:<port>/sse - stdio: pipe to
mcp-superset --transport stdio
Available Tools (137)
Dashboards (15 tools)
Dashboard Filters (5 tools)
Charts (11 tools)
Databases (18 tools)
Datasets (11 tools)
SQL Lab & Queries (13 tools)
Security & Access Control (26 tools)
Groups (9 tools)
Tags (7 tools)
System & Reports (21 tools)
Audit (1 tool)
Safety Features
The server includes extensive built-in protections to prevent accidental data loss or misconfiguration.
Confirmation Flags
Destructive operations require explicit confirmation parameters:
Automatic Protections
- DDL/DML blocking — SQL Lab rejects
DROP,DELETE,UPDATE,INSERT,TRUNCATE,ALTER,CREATE,GRANT,REVOKE(SQL comments are stripped before checking) - System role protection — cannot delete Admin, Alpha, Gamma, Public roles
- Service account protection — cannot delete the MCP service user
- RLS safety —
rls_updaterequires bothrolesandtablesto prevent silent data wipe - Native filter IDs — automatically generated in
NATIVE_FILTER-<uuid>format - Chart validation — rejects charts without
granularity_sqla(required for dashboard time filters) - Auto-sync — datasource_access permissions are automatically synchronized when dashboard roles change
Architecture
Superset Compatibility
- Tested with: Apache Superset 6.0.1
- Authentication: JWT (recommended) — API Key (
sst_*) is not implemented in Superset - Required Superset user: Admin role (for full API access)
Recommended Superset Configuration
Add to your superset_config.py:
Development
Setup
Running Locally
Running Tests
Known Superset API Quirks
These are handled automatically by the MCP server, but useful to know when debugging:
License
MIT — Stanislav Chernov (@bintocher)
来源:README.md,提交 4e0a856
工具
0版本历史
1- v0.2.3最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分