← 返回目录
M

MCP Metabase Server

社区
为 AI 助手提供全面的 Metabase 访问能力(70+ 工具)
分类
其他 第 83 / 230
Stars
★ 82 热门
传输方式
stdio(本地进程)
运行环境
Node.js · Docker
凭据
需要 API Key / 凭据
许可证
MIT
最近提交
工具数
95
59FMRS · C

该 MCP 服务器利用 Metabase REST API 提供全面功能,包括仪表板、卡片、数据库、表、集合和用户管理。它支持多种部署方式和权限控制。对于希望将 Metabase 集成到 AI 工作流的组织来说,这是一个强大的工具,但需要谨慎管理 API 权限以避免意外修改。

最强项 · 文档质量 15/20 最弱项 · 可靠性 6/20

可靠性
6/20
安全与权限
12/20
维护活跃度
12/20
文档质量
15/20
安装易用性
14/20
查看各项评分依据
可靠性 6/20
仅提供 README 与仓库元数据,未见源码、测试、CI 工作流或服务端 manifest,无法核实 MCP 初始化握手与工具行为是否与声明一致。README 中 96 个工具按领域列表自洽(27+21+16+17+13+2=96),快乐路径看似可行,但仓库描述写 70+ 与 README 的 96 存在轻微不一致。按静态校准规则,缺乏可执行证据即扣分,可靠性最高只能给到 12 以下,保守评 6。
安全与权限 12/20
文档示例中未出现真实令牌或密钥,凭据通过 METABASE_URL/METABASE_API_KEY 环境变量传入,具备基本的数据边界(仅与 Metabase API 交互)。TOOL_MODE 提供 all/essential/read/write 范围控制,但默认 all 会暴露 delete_database、replace_table_csv、delete_collection、revert_dashboard 等不可逆或破坏性操作,且没有任何二次确认机制;用户名/密码回退方案弱于 API Key。未触发红线(无恶意代码、无凭据窃取、无真实密钥),但最小权限非默认、危险操作缺少确认,故评为 12。
维护活跃度 12/20
仓库未归档、拥有 MIT 许可证、有 3 个未关闭 issue、npm 版本徽章和明确的维护方 EaseCloud 及支持邮箱,表明项目处于活跃状态。但所供材料中无提交历史、发布节奏、CHANGELOG 或依赖更新记录可供核实,治理与版本化证据不足,按‘活跃但治理有缺口’的 10 分基准酌情评为 12。
文档质量 15/20
README 分层较完整:快速开始、npx/全局/Docker 安装、鉴权与 TOOL_MODE 说明、六大领域共 96 个工具的分组表格及描述、metabase:// 资源 URI、开发/调试命令、Issue 提交模板和贡献指引,示例覆盖 macOS 与 Windows 客户端配置。欠缺故障排查章节、逐工具参数与限额说明、失败模式披露;.env.example 仅被提及而未展示,存在隐藏假设。按‘可用但排查与限制披露有缺口’的 10 分基准,结合文档丰富度评为 15。
安装易用性 14/20
安装路径清晰:一条 npx 命令即可启动,另有全局 npm、Docker 和本地构建(node dist/index.js)三种方式,并给出 Claude Desktop 在 macOS/Windows 的配置 JSON 示例(含 npx 与本地构建两种)。静态校准将 setup 上限设为 15,且本审查无 CI/测试可验证,dist/index.js 路径、docker build 与 .env.example 是否真实存在均未核实,故保守评为 14。

静态评测 · 未实际运行收录于 2026-08-07

查看 FMRS 评分方法 →

选型与风险

能访问什么访问网络连接数据库

适合谁

  • 使用 Metabase 的组织希望在其 BI 平台上启用 AI 驱动的交互
  • 开发者希望构建基于 Metabase 数据的 AI 代理
  • 需要自动化 Metabase 管理与监控的场景

不适合谁

  • 非 Metabase 用户
  • 需要实时、低延迟数据查询的场景(此服务器通过 API 调用)
  • 希望避免维护 Metabase 实例的团队

所需权限

  • 需要 Metabase 实例的 API 密钥或用户名/密码
  • 工具可以读取和修改仪表板、卡片、数据库、集合和用户,具体取决于 API 令牌的权限
  • 模式缓存可能需要本地文件系统写入权限(~/.easecloud/metabase-mcp/)

风险与副作用

  • 如果 API 令牌权限过高,可能意外修改或删除 Metabase 资源
  • 使用写入工具时需谨慎,因为它们可能导致不可逆更改
  • 未加密的 API 密钥可能被泄露
  • 对 Metabase 实例的滥发请求可能导致速率限制或负载增加

安装接入

准备工作

运行环境:Node.js · Docker

METABASE_URL 必填 你的 Metabase 实例地址,如 https://your-metabase-instance.com,必填。
METABASE_API_KEY 可选密钥 Metabase API 密钥(推荐认证方式),在 Metabase 后台账号设置中生成。
METABASE_PASSWORD 可选密钥 Metabase 密码,与 METABASE_USERNAME 搭配作为后备认证。
其他可选配置项(2 个)
METABASE_USERNAME 可选 Metabase 用户名,仅在未使用 API 密钥时的后备认证方式。
TOOL_MODE 可选 可选,控制暴露的工具范围:all(默认)、essential、read、write。
  1. 设置环境变量 METABASE_URL 和 METABASE_API_KEY(或使用用户名/密码)。
  2. 运行 npx @easecloudio/mcp-metabase-server。
  3. 在客户端(如 Claude Desktop)中配置 MCP 服务器指向该命令。
claude_desktop_config.json
{
  "mcpServers": {
    "metabase": {
      "command": "npx",
      "args": [
        "@easecloudio/mcp-metabase-server"
      ],
      "env": {
        "METABASE_URL": "https://your-metabase-instance.com",
        "METABASE_API_KEY": "your_metabase_api_key"
      }
    }
  }
}

以 Claude Desktop 为例。其他客户端的配置文件位置或字段可能不同(如 VS Code 使用 servers 字段),可用下方配置生成器转换。

.vscode/mcp.json
{
  "servers": {
    "metabase": {
      "command": "npx",
      "args": [
        "@easecloudio/mcp-metabase-server"
      ],
      "env": {
        "METABASE_URL": "https://your-metabase-instance.com",
        "METABASE_API_KEY": "your_metabase_api_key"
      }
    }
  }
}

写入项目的 .vscode/mcp.json(VS Code 使用 servers 字段)。

Terminal
claude mcp add metabase -e METABASE_URL=https://your-metabase-instance.com -e METABASE_API_KEY=your_metabase_api_key -- npx @easecloudio/mcp-metabase-server

在终端运行;先把 <…> 占位符换成你自己的值。

验证是否装好

在客户端工具列表中应出现 list_dashboards 等工具;运行 list_dashboards 或 check_database_health,能返回 Metabase 实例的数据即说明连接成功。

常见排障

  1. 确保 METABASE_URL 可从运行服务器的机器访问
  2. 验证 API 密钥是否有效且具有足够的权限
  3. 检查 Metabase 版本是否为 v0.46 或更高版本,推荐 v0.48+
  4. 如果使用 Docker,确保环境变量已正确传递
  5. 使用 MCP Inspector 调试工具调用问题

试试这样问

连接成功后,可以直接对 AI 助手这样说:

  • 列出我 Metabase 中的所有仪表盘
  • 执行 ID 为 12 的卡片并把结果导出为 CSV
  • 给我的数据库连接做一次健康检查
  • 把 SQL 问题转换成 MBQL 问题并保存为新卡片

工具能力 95

list_dashboards 只读
列出所有仪表板
get_dashboard 只读
按 ID 获取特定仪表板
create_dashboard 写入
创建新的仪表板
update_dashboard 写入
更新现有仪表板
delete_dashboard 破坏性
删除/归档仪表板
copy_dashboard 写入
复制仪表板(浅复制或深复制)
save_dashboard 写入
保存完整的仪表板对象,包含嵌套数据
save_dashboard_to_collection 写入
将仪表板移动到特定集合
展开其余 87 个工具
search_dashboards 只读
按名称或描述搜索仪表板
favorite_dashboard 写入
将仪表板标记为收藏
unfavorite_dashboard 写入
从收藏中移除仪表板
get_dashboard_cards 只读
获取仪表板中的所有卡片
add_card_to_dashboard 写入
添加卡片并设置位置
add_text_block 写入
添加文本或标题块到仪表板
remove_card_from_dashboard 写入
从仪表板中移除卡片
update_dashboard_card 写入
更新卡片位置、大小和设置
update_dashboard_cards 写入
批量替换仪表板上的所有卡片
update_dashcard 写入
更新特定 dashcard 的属性
execute_dashboard_card 只读
执行特定的 dashcard 并返回结果
create_dashboard_public_link 写入
创建公开分享链接
delete_dashboard_public_link 写入
移除公开链接
list_public_dashboards 只读
列出具有公开链接的仪表板
list_embeddable_dashboards 只读
列出已启用嵌入的仪表板
get_dashboard_revisions 只读
获取修订历史(审计追踪)
revert_dashboard 写入
回滚到之前的修订版本
get_dashboard_related 只读
获取相关内容建议
get_dashboard_queries 只读
提取所有卡片查询并解析字段 ID
list_cards 只读
列出所有问题/卡片
get_card 只读
按 ID 获取卡片(包含完整 SQL / MBQL 查询)
create_card 写入
创建新问题
update_card 写入
更新现有问题
delete_card 破坏性
删除/归档问题
copy_card 写入
复制卡片
move_cards 写入
将一个或多个卡片移动到不同集合
move_cards_to_collection 写入
从源集合批量移动卡片
execute_card 只读
运行卡片并返回结果
execute_pivot_card_query 只读
以透视表格式运行卡片
export_card_result 只读
以 CSV 或 JSON 格式导出结果
get_card_param_values 只读
获取卡片参数的可用值
search_card_param_values 只读
搜索/筛选参数值
get_card_param_remapping 只读
获取参数值显示时的重新映射方式
get_card_query_metadata 只读
获取列类型和显示名称
get_card_dashboards 只读
列出包含此卡片的仪表板
get_card_series 只读
获取系列数据或相关卡片建议
create_card_public_link 写入
创建公开分享链接
delete_card_public_link 写入
移除公开链接
list_public_cards 只读
列出具有公开链接的卡片
list_embeddable_cards 只读
列出已启用嵌入的卡片
list_databases 只读
列出所有数据库连接
get_database 只读
按 ID 获取特定数据库
create_database_connection 写入
创建新的数据库连接
update_database 写入
更新数据库连接的配置或凭据
delete_database 破坏性
永久移除数据库连接
add_sample_database 写入
添加内置的 H2 示例数据库(含演示数据)
execute_query 只读
对数据库执行 SQL 查询
get_database_schema 只读
获取模式信息
get_database_tables 只读
获取数据库中的所有表
get_database_metadata 只读
获取完整元数据,包括所有表和字段 ID
list_database_schemas 只读
列出数据库中的所有模式
sync_database_schema 写入
触发模式元数据同步
get_database_sync_status 只读
检查同步状态
check_database_health 只读
检查连接健康状况
validate_database 只读
保存前验证连接设置
test_database_connection 只读
测试现有连接
list_tables 只读
列出表(可按数据库过滤)
get_table 只读
按 ID 获取表元数据
get_table_metadata 只读
获取完整查询元数据,包括字段 ID 和类型
get_table_fks 只读
获取外键关系
get_table_related 只读
通过外键关系查找相关表
get_table_data 只读
获取表的数据预览
get_field_id 只读
通过表 ID 和列名查找字段 ID(返回 MBQL 引用)
get_card_table_fks 只读
获取卡片虚拟表的外键关系
get_card_table_query_metadata 只读
获取卡片虚拟表的查询元数据
update_table 写入
更新显示名称、描述或可见性
update_tables 写入
使用相同配置批量更新多个表
reorder_table_fields 写入
更改字段的显示顺序
sync_table_schema 写入
为特定表触发模式同步
rescan_table_field_values 写入
重新扫描字段值(更新筛选下拉列表)
discard_table_field_values 写入
丢弃缓存的字段值
append_csv_to_table 写入
从 CSV 内容追加新行
replace_table_csv 破坏性
用新的 CSV 内容替换所有表数据
list_collections 只读
列出所有集合
create_collection 写入
创建新集合
get_collection 只读
获取集合详细信息
update_collection 写入
更新名称、描述、颜色或父级
delete_collection 破坏性
删除集合及其内容
get_collection_items 只读
列出卡片、仪表板和子集合
move_to_collection 写入
将卡片或仪表板移动到不同集合
list_users 只读
列出所有用户
create_user 写入
创建新用户
list_permission_groups 只读
列出所有权限组
create_permission_group 写入
创建新权限组
search_content 只读
搜索所有 Metabase 内容
get_schema_cache 只读
返回缓存的模式(如果缺失或过期则自动获取)
refresh_schema_cache 写入
强制刷新一个或所有数据库的缓存

使用场景

自动化 Metabase 中的仪表板、卡片和数据库管理
通过自然语言查询和操作 Metabase 数据
将 AI 助手集成到 BI 工作流中

支持客户端

Claude Desktop

依据项目文档列出,未经本站实测。

详细介绍

一个基于 Model Context Protocol (MCP) 的服务器,让 AI 助手能够全面访问您的 Metabase 分析平台——包括仪表板、卡片、数据库、表、集合等。由 EaseCloud 开发和维护。

同类可选方案

BioMCP 75 · B

统一的命令行语法,接入约30个可信生物医学数据源。

★ 659 · 工具数 11 与当前对比 →

源版本 464fc93edd22 数据同步于 2026-10-19 查看 FMRS 评分方法