CAT
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Cross AI Tools

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by @mertduzgun

Independent project, not affiliated with Anthropic

MCP Superset

bintocher/mcp-superset
45authSTDIOregistry active
Summary

Connects Claude to Apache Superset's full REST API with 137 tools covering dashboards, charts, datasets, SQL Lab, and the complete security layer. You get CRUD operations for visualizations and data sources, plus deeper features like Row Level Security management, native filter configuration, permission auditing, and automated datasource access synchronization when granting dashboard permissions. Ships with safety guards including confirmation flags for destructive operations and DDL/DML blocking in SQL Lab. Supports stdio for desktop clients or HTTP/SSE for web integrations. Authenticate with JWT (auto-refreshed with CSRF handling) using your Superset credentials. Install via pip or run directly with uvx. Reach for this when you need programmatic control over an entire Superset instance, not just querying data.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →

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

Featuremcp-supersetsuperset-mcpsuperset-mcp (Winding2020)superset-mcp-server
Total tools13760314
LanguagePythonPythonTypeScriptTypeScript
Dashboard CRUD15 tools58-
Dashboard native filters5 tools---
Chart CRUD11 tools57-
Database tools18 tools1411
Dataset tools11 tools37-
SQL Lab5 tools711
Security (users/roles)26 tools2--
Row Level Security5 tools---
Groups9 tools---
Permissions audityes---
Dashboard access grant/revokeyes---
Auto datasource_access syncyes---
Reports & annotations10 tools---
Tags7 tools7--
Asset export/importyes---
Safety: confirmation flags14 types---
Safety: DDL/DML blockingyes---
Safety: system role protectionyes---
TransportHTTP, SSE, stdiostdiostdiostdio
Auth methodJWT + auto-refresh + CSRFUsername/password + token fileUsername/password or tokenLDAP
Superset versions6.0.14.1.1not specifiednot specified
CLI with args--host --port --transport---
PyPI packagemcp-supersetsuperset-mcpsuperset-mcp (npm)-
uvx supportyes---
LicenseMITMIT-Apache 2.0
GitHub starsnew170215

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

# From PyPI
pip install mcp-superset

# With uv (recommended)
uv pip install mcp-superset

# Run without installing (uvx)
uvx mcp-superset

Configuration

Create a .env file in the current directory, or set environment variables:

# Required
SUPERSET_BASE_URL=https://superset.example.com
SUPERSET_USERNAME=admin
SUPERSET_PASSWORD=your_password

# Optional
SUPERSET_AUTH_PROVIDER=db          # db (default) or ldap
SUPERSET_MCP_HOST=127.0.0.1       # Server host (default: 127.0.0.1)
SUPERSET_MCP_PORT=8001             # Server port (default: 8001)
SUPERSET_MCP_TRANSPORT=streamable-http  # streamable-http (default), sse, or stdio

Running

# Using CLI (after pip install)
mcp-superset

# Run without installing
uvx mcp-superset

# Using Python module
python -m mcp_superset

# With uv from source
uv run mcp-superset

# With custom settings
mcp-superset --host 0.0.0.0 --port 9000 --transport sse

# With custom .env file
mcp-superset --env-file /path/to/.env

# Using stdio transport (for Claude Desktop, Cursor, etc.)
mcp-superset --transport stdio

CLI Options

OptionDefaultEnv VariableDescription
--host127.0.0.1SUPERSET_MCP_HOSTServer bind address
--port8001SUPERSET_MCP_PORTServer bind port
--transportstreamable-httpSUPERSET_MCP_TRANSPORTTransport: streamable-http, sse, stdio
--env-fileauto-detect—Path to .env file
--version——Show version and exit

Connecting to MCP Clients

Claude Code

Add to your project's .mcp.json:

{
  "mcpServers": {
    "superset": {
      "type": "http",
      "url": "http://localhost:8001/mcp"
    }
  }
}

Then start the server: mcp-superset or uvx mcp-superset.

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "superset": {
      "command": "uvx",
      "args": ["mcp-superset", "--transport", "stdio"],
      "env": {
        "SUPERSET_BASE_URL": "https://superset.example.com",
        "SUPERSET_USERNAME": "admin",
        "SUPERSET_PASSWORD": "your_password"
      }
    }
  }
}

Cursor / Windsurf

{
  "mcpServers": {
    "superset": {
      "command": "uvx",
      "args": ["mcp-superset", "--transport", "stdio"],
      "env": {
        "SUPERSET_BASE_URL": "https://superset.example.com",
        "SUPERSET_USERNAME": "admin",
        "SUPERSET_PASSWORD": "your_password"
      }
    }
  }
}

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)

ToolDescription
superset_dashboard_listList dashboards with filtering and pagination
superset_dashboard_getGet dashboard details by ID
superset_dashboard_createCreate a new dashboard
superset_dashboard_updateUpdate dashboard properties
superset_dashboard_deleteDelete a dashboard (requires confirmation)
superset_dashboard_copyDuplicate a dashboard
superset_dashboard_publishPublish a draft dashboard
superset_dashboard_unpublishUnpublish a dashboard
superset_dashboard_chartsList charts in a dashboard
superset_dashboard_datasetsList datasets used by a dashboard
superset_dashboard_exportExport dashboard as ZIP (base64)
superset_dashboard_importImport dashboard from ZIP file
superset_dashboard_embedded_getGet embedded configuration
superset_dashboard_embedded_setEnable embedded mode with allowed domains
superset_dashboard_embedded_deleteDisable embedded mode

Dashboard Filters (5 tools)

ToolDescription
superset_dashboard_filter_listList native filters on a dashboard
superset_dashboard_filter_addAdd a native filter (auto-generates correct ID format)
superset_dashboard_filter_updateUpdate an existing native filter
superset_dashboard_filter_deleteRemove a native filter (requires confirmation)
superset_dashboard_filter_resetRemove all filters (requires confirmation)

Charts (11 tools)

ToolDescription
superset_chart_listList charts with filtering and pagination
superset_chart_getGet chart details by ID
superset_chart_createCreate a new chart
superset_chart_updateUpdate chart properties
superset_chart_deleteDelete a chart (requires confirmation)
superset_chart_copyDuplicate a chart
superset_chart_dataExecute chart query and get data
superset_chart_get_dataGet data from a saved chart
superset_chart_exportExport chart as ZIP (base64)
superset_chart_importImport chart from ZIP file
superset_chart_cache_warmupWarm up chart cache

Databases (18 tools)

ToolDescription
superset_database_listList database connections
superset_database_getGet database details
superset_database_createRegister a new database connection
superset_database_updateUpdate database settings
superset_database_deleteRemove a database (requires confirmation)
superset_database_test_connectionTest database connectivity
superset_database_schemasList schemas in a database
superset_database_tablesList tables in a schema
superset_database_catalogsList catalogs (for multi-catalog databases)
superset_database_connection_infoGet connection string info
superset_database_function_namesList available SQL functions
superset_database_related_objectsFind charts/datasets using this database
superset_database_validate_sqlValidate SQL syntax
superset_database_validate_parametersValidate connection parameters
superset_database_select_starGenerate SELECT * query for a table
superset_database_table_metadataGet table column and index metadata
superset_database_exportExport database config as ZIP
superset_database_available_enginesList supported database engines

Datasets (11 tools)

ToolDescription
superset_dataset_listList datasets with filtering
superset_dataset_getGet dataset details including columns and metrics
superset_dataset_createCreate a dataset from a table or SQL query
superset_dataset_updateUpdate dataset properties
superset_dataset_deleteDelete a dataset (requires confirmation)
superset_dataset_duplicateDuplicate a dataset
superset_dataset_refresh_schemaRefresh columns from source
superset_dataset_related_objectsFind charts using this dataset
superset_dataset_exportExport dataset as ZIP
superset_dataset_importImport dataset from ZIP
superset_dataset_get_or_createGet existing or create new dataset

SQL Lab & Queries (13 tools)

ToolDescription
superset_sqllab_executeExecute a SQL query (SELECT only)
superset_sqllab_format_sqlFormat/beautify SQL
superset_sqllab_resultsFetch results of a completed query
superset_sqllab_estimate_costEstimate query execution cost
superset_sqllab_export_csvExport query results as CSV
superset_query_listList executed queries
superset_query_getGet query details and results
superset_query_stopStop a running query
superset_saved_query_listList saved queries
superset_saved_query_createSave a new query
superset_saved_query_getGet saved query details
superset_saved_query_updateUpdate a saved query
superset_saved_query_deleteDelete a saved query (requires confirmation)

Security & Access Control (26 tools)

ToolDescription
superset_get_current_userGet current authenticated user info
superset_get_current_user_rolesGet roles of current user
superset_user_listList users with filtering
superset_user_getGet user details
superset_user_createCreate a new user
superset_user_updateUpdate user properties
superset_user_deleteDelete a user (requires confirmation)
superset_role_listList roles
superset_role_getGet role details
superset_role_createCreate a new role
superset_role_updateUpdate role name/description
superset_role_deleteDelete a role (requires confirmation, blocks system roles)
superset_permission_listList all available permissions
superset_role_permissions_getGet permissions assigned to a role
superset_role_permission_addSet role permissions (full replacement, requires confirmation)
superset_role_copy_permissionsCopy all permissions from one role to another
superset_dashboard_grant_role_accessGrant a role access to dashboard and its datasets
superset_dashboard_revoke_role_accessRevoke a role's access to dashboard datasets
superset_bulk_user_role_addAdd a role to multiple users (by IDs or by current role)
superset_bulk_user_role_removeRemove a role from multiple users
superset_bulk_user_role_replaceReplace one role with another for all matching users
superset_rls_listList Row Level Security rules
superset_rls_getGet RLS rule details
superset_rls_createCreate an RLS rule
superset_rls_updateUpdate an RLS rule (requires both roles and tables)
superset_rls_deleteDelete an RLS rule (requires confirmation)

Groups (9 tools)

ToolDescription
superset_group_listList groups
superset_group_getGet group details with members and roles
superset_group_createCreate a new group
superset_group_updateUpdate group name
superset_group_deleteDelete a group
superset_group_add_usersAdd users to a group
superset_group_remove_usersRemove users from a group
superset_group_add_rolesAdd roles to a group
superset_group_remove_rolesRemove roles from a group

Tags (7 tools)

ToolDescription
superset_tag_listList tags
superset_tag_getGet tag details
superset_tag_createCreate a tag (optionally bind to objects)
superset_tag_updateUpdate a tag
superset_tag_deleteDelete a tag (requires confirmation)
superset_tag_get_objectsList objects associated with a tag
superset_tag_bulk_createCreate multiple tags at once

System & Reports (21 tools)

ToolDescription
superset_report_listList scheduled reports
superset_report_getGet report details
superset_report_createCreate a scheduled report
superset_report_updateUpdate a report
superset_report_deleteDelete a report (requires confirmation)
superset_annotation_layer_listList annotation layers
superset_annotation_layer_getGet annotation layer details
superset_annotation_layer_createCreate an annotation layer
superset_annotation_layer_updateUpdate an annotation layer
superset_annotation_layer_deleteDelete an annotation layer (requires confirmation)
superset_annotation_listList annotations in a layer
superset_annotation_getGet annotation details
superset_annotation_createCreate an annotation
superset_annotation_updateUpdate an annotation
superset_annotation_deleteDelete an annotation (requires confirmation)
superset_recent_activityGet recent user activity
superset_log_listGet audit logs
superset_get_menuGet Superset menu structure
superset_get_base_urlGet configured Superset base URL
superset_assets_exportExport all Superset assets as ZIP
superset_assets_importImport assets from ZIP file

Audit (1 tool)

ToolDescription
superset_permissions_auditGenerate comprehensive permissions matrix

Safety Features

The server includes extensive built-in protections to prevent accidental data loss or misconfiguration.

Confirmation Flags

Destructive operations require explicit confirmation parameters:

OperationRequired FlagWhat It Shows
Delete dashboardconfirm_delete=TrueDashboard name, slug, chart count
Delete chartconfirm_delete=TrueLinked dashboards
Delete datasetconfirm_delete=TrueAffected charts and dashboards
Delete databaseconfirm_delete=TrueAffected datasets, charts
Delete RLS ruleconfirm_delete=TrueClause, roles, datasets
Delete roleconfirm_delete=TrueBlocks system roles
Delete userconfirm_delete=TrueBlocks service account deletion
Update chart paramsconfirm_params_replace=True—
Update dataset columnsconfirm_columns_replace=True—
Update database URIconfirm_uri_change=TrueAffected charts/dashboards
Update user rolesconfirm_roles_replace=TrueCurrent roles
Set role permissionsconfirm_full_replace=True—
Grant dashboard accessconfirm_grant=TrueDry-run results
Revoke dashboard accessconfirm_revoke=TrueDry-run results
Bulk add role to usersconfirm=TrueUser count, sample list
Bulk remove role from usersconfirm=TrueUser count, prevents last role removal
Bulk replace roleconfirm=TrueOld/new role names, user count
Copy role permissionsconfirm=TrueSource/target permission counts

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_update requires both roles and tables to 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-mcp/
├── pyproject.toml              # Package configuration
├── .env.example                # Environment variable template
├── LICENSE                     # MIT License
├── README.md                   # This file
├── README_RU.md                # Russian documentation
├── CHANGELOG.md                # Version history
└── src/mcp_superset/
    ├── __init__.py             # Package init with __version__
    ├── __main__.py             # CLI entry point with argparse
    ├── server.py               # FastMCP server setup and configuration
    ├── auth.py                 # JWT authentication (login, refresh, CSRF)
    ├── client.py               # HTTP client (auto-auth, retry, RISON pagination)
    ├── models.py               # Pydantic models
    └── tools/
        ├── __init__.py         # register_all_tools()
        ├── helpers.py          # Auto-sync datasource_access logic
        ├── dashboards.py       # Dashboard + filter tools (20)
        ├── charts.py           # Chart tools (11)
        ├── databases.py        # Database tools (18)
        ├── datasets.py         # Dataset tools (11)
        ├── queries.py          # SQL Lab + saved query tools (13)
        ├── security.py         # User, role, permission, RLS, bulk operations (26)
        ├── groups.py           # Group management tools (9)
        ├── audit.py            # Permissions audit tool (1)
        ├── tags.py             # Tag tools (7)
        └── system.py           # Reports, annotations, logs, assets (21)

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:

from datetime import timedelta

# Increase JWT token lifetime (default is 15 min)
JWT_ACCESS_TOKEN_EXPIRES = timedelta(hours=1)
JWT_REFRESH_TOKEN_EXPIRES = timedelta(days=30)

# Max API page size
FAB_API_MAX_PAGE_SIZE = 100

Development

Setup

git clone https://github.com/bintocher/mcp-superset.git
cd superset-mcp

# Create virtual environment and install in editable mode
uv venv
uv pip install -e ".[dev]"

# Copy and configure .env
cp .env.example .env
# Edit .env with your Superset credentials

Running Locally

# Run from source
uv run python -m mcp_superset

# Or with CLI
uv run mcp-superset --port 8001

Running Tests

uv run python test_all_tools.py

Known Superset API Quirks

These are handled automatically by the MCP server, but useful to know when debugging:

QuirkDetails
RISON paginationSuperset ignores page/page_size as query params; must use RISON in q parameter
CSRF requiredAll POST/PUT/DELETE need X-CSRFToken header + session cookie
Referer requiredSQL Lab returns 403 without Referer header
Tag API returns {}Tag creation doesn't return the ID; must query list
Tag update needs nameField is mandatory even if unchanged
Role permissions replacePOST /security/roles/{id}/permissions replaces ALL permissions
RLS update replacesPUT /rowlevelsecurity/{id} replaces ALL provided fields
Dataset update columnsPUT /dataset/{id} with columns replaces ALL columns
Dashboard copyRequires json_metadata (can be "{}")
Native filter IDsMust be NATIVE_FILTER-<uuid> format
filter_time needs granularity_sqlaCharts without it silently ignore time filters
Number formattingSMART_NUMBER abbreviates; use ,d or ,.2f for exact

License

MIT — Stanislav Chernov (@bintocher)

Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →

Configuration

SUPERSET_BASE_URL*

Base URL of your Apache Superset instance

SUPERSET_USERNAME*

Superset username for authentication

SUPERSET_PASSWORD*secret

Superset password for authentication

Categories
DatabasesSecurity & Pentesting
Registryactive
Packagemcp-superset
TransportSTDIO
AuthRequired
UpdatedMar 10, 2026
View on GitHub

Related Databases MCP Servers

View all →
Postgres

ai.waystation/postgres

Connect to your PostgreSQL database to query data and schemas.
54
Read Only Local Postgres Mcp Server

hovecapital/read-only-local-postgres-mcp-server

MCP server for read-only PostgreSQL database queries in Claude Desktop
2
Database Mcp

cocaxcode/database-mcp

MCP server for database connectivity. Multi-DB (PostgreSQL, MySQL, SQLite), 19 tools.
1
Mcp Mysql

io.github.infoinlet-marketplace/mcp-mysql

Read-only MySQL/MariaDB for AI agents — query, list/describe tables, health. SQL-guarded.
Database Admin

io.github.cybeleri/database-admin

Database admin MCP: schema inspection, query optimization for PostgreSQL and MySQL
Postgres Secured (Aegis Zero-Trust)

io.github.yash-0620/postgres-mcp-secured

Enterprise PostgreSQL MCP secured by Aegis Zero-Trust to block unauthorized SQL injections.