Skip to main content
Glama
Superset MCP Server

Superset MCP Server

by LiusCraft

WIP: MCP Server Superset

基于 Apache Superset REST API 构建的 Model Context Protocol (MCP) 服务器端应用。

项目简介

这是一个基于 Apache Superset RESTAPI 在MCP上实现了通过大模型来让它进行基本的查询能力。

Related MCP server: MCP TapData Server

功能特性

  • 查询数据库

  • 查询表

  • 查询字段

  • 执行sql

环境要求

  • Node.js >= 14.0.0

快速开始

直接使用

npx -y https://github.com/LiusCraft/superset-mcp-server

SUPERSET_URL
SUPERSET_USERNAME
SUPERSET_PASSWORD

鉴权方式:ladp

安装依赖

# 安装 Node.js 依赖
npm install

启动服务

# api client 测试
npm run src/examples/superset-example.ts

# 调试环境
npm run inspector

# 生产环境
npm run build
npm start

配置说明

项目配置文件位于 config 目录下,包括:

  • 数据库配置

  • API 配置

  • 安全配置

API 文档

参考superset官方 swagger文档

开发指南

目录结构

.
├── src/          # 源代码目录
├── src/examples          # 封装的api客户端测试代码
├── src/services          # 封装的api函数
├── src/utils             # 封装的superset baseHttpClient
├── src/index.ts          # 定义mcp接口

开发规范

  • 遵循 ESLint 规范

  • 使用 TypeScript 进行开发

  • 遵循 Git Flow 工作流

部署

mcp 部署

  1. build the project

  2. set mcp config:

node currentFolder/build/index.js
  1. use the mcp

贡献指南

  1. Fork 本仓库

  2. 创建特性分支

  3. 提交变更

  4. 发起 Pull Request

许可证

Apache License 2.0

联系方式

如有问题,请提交 Issue 或联系项目维护者。

Available Tools

4 tools
list-databasesB

获取所有可用的数据库列表

Inputs: no named parameters.

list-fieldsC

获取指定表的字段列表

Inputs: databaseId (required), schema (required), tableName (required).

list-tablesC

获取指定数据库的表列表

Inputs: databaseId (required), schema.

query-supersetC

执行 Superset 数据查询

Inputs: query (required), databaseId, schema, tableName.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.2/5.0

    Scored across 4 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose with no overlap: list-databases enumerates databases, list-tables shows tables within a database, list-fields details fields within a table, and query-superset executes queries. The hierarchical progression from databases to tables to fields to queries eliminates any ambiguity.

    Naming Consistency5/5

    All tools follow a consistent verb_noun pattern using kebab-case (list-databases, list-fields, list-tables, query-superset). The verbs 'list' and 'query' are appropriately descriptive and applied consistently across the set, making the naming highly predictable.

    Tool Count4/5

    With 4 tools, the count is reasonable for a Superset data exploration server, covering core operations like listing resources and querying. It feels slightly lean but not incomplete, as it supports basic workflows without unnecessary bloat. A few more tools (e.g., for metadata or schema operations) could enhance it, but it's well-scoped.

    Completeness4/5

    The tools provide a logical flow for data exploration: list databases, then tables, then fields, and finally query. Minor gaps exist, such as no explicit tools for creating or managing resources (e.g., dashboards or charts), but the core query and discovery operations are covered, allowing agents to navigate and query data effectively.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      Not graded
      quality
      D
      maintenance
      A Model Context Protocol server that enables Large Language Models to access and interact with database connections, including viewing schemas and performing CRUD operations on connected databases.
      -
    • A
      license
      Not graded
      quality
      D
      maintenance
      A Model Context Protocol server that enables LLMs like Claude to interact with SQLite and SQL Server databases, allowing for schema inspection and SQL query execution.
      782 npm
      391
      MIT