trackmcp
Back to directory
Winding2020

superset-mcp

View on GitHub

A Model Context Protocol (MCP) server for managing Apache Superset datasets, metrics, and SQL queries.

24 stars TypeScriptOthers Updated May 23, 2026

Documentation

Superset MCP Server

A Model Context Protocol (MCP) server for managing Apache Superset datasets, metrics, and SQL queries.

> πŸ“– δΈ­ζ–‡ζ–‡ζ‘£

πŸš€ Features

  • Dataset Management: Full CRUD operations for Superset datasets
  • Metrics Management: Create, update, and manage dataset metrics
  • Calculated Columns: Create and manage calculated columns for datasets
  • Chart Management: View and modify chart visualization parameters and filters
  • Dashboard Operations: Access dashboard information, charts, and filters
  • SQL Query Execution: Execute SQL queries directly through Superset
  • Database Integration: List and manage database connections
  • Resource Access: Browse datasets, databases, and metrics through MCP resources

πŸ“‹ Prerequisites

  • Node.js 18+
  • Access to an Apache Superset instance
  • Valid Superset credentials (username/password or access token)

πŸ› οΈ Installation

Using with Cursor or Claude Desktop

1. Add to MCP Configuration

Add the following configuration to your MCP settings file:

json
{
  "mcpServers": {
    "superset-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "superset-mcp"
      ],
      "env": {
        "SUPERSET_BASE_URL": "",
        "SUPERSET_USERNAME": "",
        "SUPERSET_PASSWORD": ""
      }
    }
  }
}

2. Environment Variables

Configure your Superset connection by updating the `env` section in the MCP configuration:

json
"env": {
  "SUPERSET_BASE_URL": "your-superset-url",
  "SUPERSET_USERNAME": "your_username",
  "SUPERSET_PASSWORD": "your_password",
}

Alternative: Using Access Token

json
"env": {
  "SUPERSET_BASE_URL": "your-superset-url",
  "SUPERSET_ACCESS_TOKEN": "your_access_token"
}

πŸ”§ Available Tools

Dataset Operations

ToolDescription
`list_datasets`Get paginated list of all datasets with filtering and sorting
`get_dataset`Get detailed information for a specific dataset
`create_dataset`Create a new dataset (physical or virtual with SQL)
`update_dataset`Update existing dataset properties
`delete_dataset`Delete a dataset
`refresh_dataset_schema`Refresh dataset schema from source database
`find_and_replace_in_sql`Find and replace text in virtual dataset SQL

Metrics Operations

ToolDescription
`get_dataset_metrics`Get all metrics for a dataset
`create_dataset_metric`Create a new metric with SQL expression
`update_dataset_metric`Update existing metric properties
`delete_dataset_metric`Delete a metric

Calculated Columns Operations

ToolDescription
`get_dataset_columns`Get column information (including calculated columns)
`create_calculated_column`Create a new calculated column with SQL expression
`update_calculated_column`Update existing calculated column
`delete_calculated_column`Delete a calculated column

Chart Operations

ToolDescription
`list_charts`Get paginated list of all charts with filtering and sorting
`create_chart`Create a new chart; for most viz types you should first call `get_chart_params` to obtain the correct params schema
`get_chart_params`Get required parameters format for chart visualization types
`get_current_chart_config`Get current chart configuration details (viz params, relationships, ownership, query context)
`update_chart`Update chart properties including metadata, datasource, and visualization parameters
`get_chart_filters`Get current data filters applied to a chart
`set_chart_filters`Set data filters for a chart (permanently updates the chart)

Dashboard Operations

ToolDescription
`list_dashboards`Get paginated list of all dashboards with filtering and sorting
`get_dashboard_charts`Get all charts in a specific dashboard with their information
`get_dashboard_filters`Get dashboard's filter configuration (native filters, global filters)
`get_dashboard_chart_query_context`Get complete query context for a chart in dashboard (dataset ID, used metrics with SQL expressions, calculated columns, applied filters)
`get_dashboard_config`Get dashboard details and embedded configuration
`update_dashboard_config`Update dashboard properties and/or embedded configuration
`add_chart_to_dashboard`Add an existing chart to a dashboard and place it in the layout
`remove_chart_from_dashboard`Remove a chart from a dashboard and clean up its layout

SQL Operations

ToolDescription
`execute_sql`Execute SQL queries with result limiting and data display

Database Operations

ToolDescription
`list_databases`Get all configured database connections

πŸ“š Resources

Access read-only overviews through MCP resources:

  • `superset://datasets` - Overview of all datasets
  • `superset://databases` - List of database connections

Prompt examples

Use these natural prompts with your MCP-enabled assistant; it will pick the right tools and arguments.

  • List datasets
    • "Show the first 10 datasets, most recently changed first. Only include id and table_name."
  • Create a chart
    • "Create a simple table chart called 'Sample Table' using dataset 12."
  • Update a chart
    • "Change chart 42 to a bar chart grouped by country and using SUM(value)."
  • Dashboard query context
    • "On the 'sales-kpi' dashboard, show the full query context for chart 101."
  • Run SQL
    • "On database 3, fetch the 10 most recently created users, returning only id and name."

Frequently asked questions

What is superset-mcp?

superset-mcp is A Model Context Protocol (MCP) server for managing Apache Superset datasets, metrics, and SQL queries.

How do I install superset-mcp?

Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

Is superset-mcp open source?

Yes β€” it is hosted on GitHub at https://github.com/Winding2020/superset-mcp and has 24 stars.

Related MCP tools

Run your own MCP server? See who uses it and what to fix.

Measure it with TrackMCP