# bintocher/mcp-superset [Health: Active]

**Category:** 📊 Data Platforms  
**Repository:** https://github.com/bintocher/mcp-superset  
**GitHub Stars:** 56  
**Views:** 3  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/bintocher-mcp-superset

## Description
Full-featured Apache Superset MCP server with 135+ tools for dashboards, charts, datasets, SQL Lab, security (users, roles, RLS, groups), permissions audit, and 30+ built-in safety validations. Supports HTTP, SSE, and stdio transports.

## Tools
Capabilities this server exposes over MCP:

- **superset_dashboard_list** — List dashboards with filtering and pagination
- **superset_dashboard_get** — Get dashboard details by ID
- **superset_dashboard_create** — Create a new dashboard
- **superset_dashboard_update** — Update dashboard properties
- **superset_dashboard_delete** — Delete a dashboard (requires confirmation)
- **superset_dashboard_copy** — Duplicate a dashboard
- **superset_dashboard_publish** — Publish a draft dashboard
- **superset_dashboard_unpublish** — Unpublish a dashboard
- **superset_dashboard_charts** — List charts in a dashboard
- **superset_dashboard_datasets** — List datasets used by a dashboard
- **superset_dashboard_export** — Export dashboard as ZIP (base64)
- **superset_dashboard_import** — Import dashboard from ZIP file
- **superset_dashboard_embedded_get** — Get embedded configuration
- **superset_dashboard_embedded_set** — Enable embedded mode with allowed domains
- **superset_dashboard_embedded_delete** — Disable embedded mode
- **superset_dashboard_filter_list** — List native filters on a dashboard
- **superset_dashboard_filter_add** — Add a native filter (auto-generates correct ID format)
- **superset_dashboard_filter_update** — Update an existing native filter
- **superset_dashboard_filter_delete** — Remove a native filter (requires confirmation)
- **superset_dashboard_filter_reset** — Remove all filters (requires confirmation)
- **superset_chart_list** — List charts with filtering and pagination
- **superset_chart_get** — Get chart details by ID
- **superset_chart_create** — Create a new chart
- **superset_chart_update** — Update chart properties
- **superset_chart_delete** — Delete a chart (requires confirmation)
- **superset_chart_copy** — Duplicate a chart
- **superset_chart_data** — Execute chart query and get data
- **superset_chart_get_data** — Get data from a saved chart
- **superset_chart_export** — Export chart as ZIP (base64)
- **superset_chart_import** — Import chart from ZIP file
- **superset_chart_cache_warmup** — Warm up chart cache
- **superset_database_list** — List database connections
- **superset_database_get** — Get database details
- **superset_database_create** — Register a new database connection
- **superset_database_update** — Update database settings
- **superset_database_delete** — Remove a database (requires confirmation)
- **superset_database_test_connection** — Test database connectivity
- **superset_database_schemas** — List schemas in a database
- **superset_database_tables** — List tables in a schema
- **superset_database_catalogs** — List catalogs (for multi-catalog databases)
- **superset_database_connection_info** — Get connection string info
- **superset_database_function_names** — List available SQL functions
- **superset_database_related_objects** — Find charts/datasets using this database
- **superset_database_validate_sql** — Validate SQL syntax
- **superset_database_validate_parameters** — Validate connection parameters
- **superset_database_select_star** — Generate SELECT * query for a table
- **superset_database_table_metadata** — Get table column and index metadata
- **superset_database_export** — Export database config as ZIP
- **superset_database_available_engines** — List supported database engines
- **superset_dataset_list** — List datasets with filtering
- **superset_dataset_get** — Get dataset details including columns and metrics
- **superset_dataset_create** — Create a dataset from a table or SQL query
- **superset_dataset_update** — Update dataset properties
- **superset_dataset_delete** — Delete a dataset (requires confirmation)
- **superset_dataset_duplicate** — Duplicate a dataset
- **superset_dataset_refresh_schema** — Refresh columns from source
- **superset_dataset_related_objects** — Find charts using this dataset
- **superset_dataset_export** — Export dataset as ZIP
- **superset_dataset_import** — Import dataset from ZIP
- **superset_dataset_get_or_create** — Get existing or create new dataset
- **superset_sqllab_execute** — Execute a SQL query (SELECT only)
- **superset_sqllab_format_sql** — Format/beautify SQL
- **superset_sqllab_results** — Fetch results of a completed query
- **superset_sqllab_estimate_cost** — Estimate query execution cost
- **superset_sqllab_export_csv** — Export query results as CSV
- **superset_query_list** — List executed queries
- **superset_query_get** — Get query details and results
- **superset_query_stop** — Stop a running query
- **superset_saved_query_list** — List saved queries
- **superset_saved_query_create** — Save a new query
- **superset_saved_query_get** — Get saved query details
- **superset_saved_query_update** — Update a saved query
- **superset_saved_query_delete** — Delete a saved query (requires confirmation)
- **superset_get_current_user** — Get current authenticated user info
- **superset_get_current_user_roles** — Get roles of current user
- **superset_user_list** — List users with filtering
- **superset_user_get** — Get user details
- **superset_user_create** — Create a new user
- **superset_user_update** — Update user properties
- **superset_user_delete** — Delete a user (requires confirmation)

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `uvx` (confidence: high):

```json
"mcpServers": {
  "mcp-superset": {
    "command": "uvx",
    "args": ["support"],
    "env": {
      "SUPERSET_BASE_URL": "",
      "SUPERSET_USERNAME": "",
      "SUPERSET_PASSWORD": "",
      "SUPERSET_AUTH_PROVIDER": "",
      "SUPERSET_SESSION_COOKIE": "",
      "SUPERSET_SESSION_COOKIE_NAME": "",
      "SUPERSET_MCP_HOST": "",
      "SUPERSET_MCP_PORT": ""
    }
  }
}
```

**Requires environment variables:** `SUPERSET_BASE_URL`, `SUPERSET_USERNAME`, `SUPERSET_PASSWORD`, `SUPERSET_AUTH_PROVIDER`, `SUPERSET_SESSION_COOKIE`, `SUPERSET_SESSION_COOKIE_NAME`, `SUPERSET_MCP_HOST`, `SUPERSET_MCP_PORT` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What bintocher/mcp-superset MCP server does

The bintocher/mcp-superset MCP server connects an MCP-compatible client to an Apache Superset instance. Its 137 tools cover administrative, content-management, analytics, and access-control workflows. Dashboard operations include listing, filtering, creating, updating, copying, publishing, exporting, importing, and managing native filters or embedded settings. Chart tools support CRUD operations, duplication, saved-chart data retrieval, query execution, and asset transfer.

Beyond dashboards and charts, the project covers databases, datasets, SQL Lab, users, roles, permissions, row-level security, groups, reports, annotations, tags, and saved queries. It also provides access-control operations for dashboards and automatic datasource permission synchronization, plus a permissions matrix for auditing access across users, dashboards, datasets, and RLS rules.

## How it works

The server communicates with Superset through its REST API and presents those operations as MCP tools. It can run with streamable HTTP, SSE, or stdio transport. HTTP is the default transport, while stdio is suitable for desktop clients that launch the process locally. The bind host, port, and transport can be selected with command-line options or environment variables.

Authentication can use Superset username and password credentials, with the authentication provider set to database or LDAP. For Superset deployments behind SSO, OAuth, or SAML, the server can instead send a browser session cookie. Cookie authentication does not renew the session; an expired cookie requires a new value and a server restart. JWT handling includes token refresh and CSRF handling when using the credential-based login flow.

## Setup and configuration

Install the `mcp-superset` package from PyPI with pip, uv, or uvx. Running `uvx mcp-superset` starts the server without a separate installation. A local `.env` file or exported variables should define `SUPERSET_BASE_URL`, `SUPERSET_USERNAME`, and `SUPERSET_PASSWORD` for the standard login path. `SUPERSET_AUTH_PROVIDER` selects `db` or `ldap`.

For session-cookie authentication, set `SUPERSET_SESSION_COOKIE` and, when necessary, `SUPERSET_SESSION_COOKIE_NAME`. The cookie name defaults to `session`, but Superset deployments may configure another name. `SUPERSET_MCP_HOST`, `SUPERSET_MCP_PORT`, and `SUPERSET_MCP_TRANSPORT` control server binding and transport. The CLI also accepts `--env-file` for a specific environment file.

The bintocher/mcp-superset MCP server can be added to Claude Desktop with a stdio command such as `uvx mcp-superset --transport stdio`. The README also documents HTTP configuration for Claude Code and identifies Cursor as a stdio use case.

## Tools and capabilities

- Manage dashboards, charts, datasets, databases, tags, reports, annotations, and saved queries.
- Execute SQL Lab queries, format SQL, estimate query cost, and export results as CSV.
- Inspect chart data and dashboard relationships, including the charts and datasets used by a dashboard.
- Configure dashboard native filters and embedded-mode domains.
- Manage users, roles, permissions, groups, and row-level security rules.
- Export and import dashboards, charts, datasets, and complete instance assets.
- Apply confirmation requirements to destructive actions and block DDL or DML in SQL Lab.

## Limitations and notes

The bintocher/mcp-superset MCP server requires access to a compatible Superset deployment and credentials or a valid session cookie. The README targets Superset 6.0.1. Session cookies grant the associated Superset account's access for their lifetime, so they should be treated as credentials and kept out of shell history and committed configuration. Destructive operations such as deletion and filter resets require confirmation, and SQL Lab safety restrictions may prevent DDL or DML statements.

_Full upstream README: https://allmcps.com/mcp/bintocher-mcp-superset/readme_

