使用说明
项目简介
Metabase MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在将 AI 助手与 Metabase 分析平台无缝集成。它充当连接 LLM 与 Metabase 数据的桥梁,使 AI 助手能够直接访问、查询和操作 Metabase 中的仪表板、问题(卡片)和数据库等资源,从而增强 AI 在数据分析和决策支持方面的能力。
主要功能点
- 资源访问: 支持通过 'metabase://' URI 访问 Metabase 中的各类资源,如仪表板、问题卡片、数据库和集合(Collection),方便LLM获取结构化数据信息。
- 数据分析工具: 内置丰富的工具集,包括数据查询、SQL 执行、仪表板和卡片管理等功能,使 AI 助手能够执行复杂的数据分析和操作任务,例如:
- 获取仪表板、问题、数据库和集合列表
- 执行已保存的问题(卡片)并获取结果
- 执行自定义 SQL 查询
- 获取仪表板的卡片列表
- 创建、更新和删除仪表板
- 创建和更新问题卡片
- 创建集合
- 两种认证方式: 支持 API 密钥和用户名密码两种 Metabase 认证方式,用户可根据安全需求灵活选择。推荐生产环境使用 API 密钥认证。
- 结构化数据: 所有数据交互均采用 JSON 格式,方便 AI 助手高效解析和利用 Metabase 返回的结构化数据。
- 详细日志: 提供详尽的日志记录,帮助用户监控服务器运行状态,快速定位和解决问题。
安装步骤
- Fork 仓库: 点击 https://github.com/cheukyin175/metabase-mcp 仓库页面右上角的 "Fork" 按钮,将仓库克隆到自己的 GitHub 账户下。
- 部署服务器: 推荐使用 Smithery 进行快速部署。访问 Smithery 官网,使用 GitHub 账户登录,并按照 Smithery 的指引部署您 Fork 后的 'metabase-mcp' 仓库。您也可以选择其他 Node.js 云平台或本地服务器进行部署。
- 配置 Metabase 连接信息: 在服务器的运行环境中配置以下环境变量,用于连接您的 Metabase 实例:
- API 密钥认证 (推荐):
- 'METABASE_URL': 您的 Metabase 实例 URL,例如 'https://your-metabase-instance.com'
- 'METABASE_API_KEY': 您的 Metabase API 密钥
- 用户名密码认证:
- 'METABASE_URL': 您的 Metabase 实例 URL,例如 'https://your-metabase-instance.com'
- 'METABASE_USER_EMAIL': 您的 Metabase 用户邮箱
- 'METABASE_PASSWORD': 您的 Metabase 用户密码
- API 密钥认证 (推荐):
服务器配置 (MCP 客户端)
要将此 MCP 服务器配置到您的 MCP 客户端(例如 Claude),您需要提供服务器的启动命令和参数。以下是配置示例 (JSON 格式):
{ "mcpServers": { "metabase-mcp": { // 服务器名称,您可以自定义 "command": "npx", "args": [ "-y", "@smithery/cli@latest", "run", "YOUR_GITHUB_USERNAME/metabase-mcp-server", // 替换为您的 GitHub 用户名和仓库名 "--config", "{\"metabaseUrl\":\"https://your-metabase-instance.com\",\"metabaseApiKey\":\"YOUR_METABASE_API_KEY\"}" // 替换为您的 Metabase URL 和 API 密钥 ] } } }
参数注释:
- '"metabase-mcp"': 服务器名称,在 MCP 客户端中用于标识此服务器连接,您可以自定义名称。
- '"YOUR_GITHUB_USERNAME/metabase-mcp-server"': 请替换为您的 GitHub 用户名以及您 Fork 后的 'metabase-mcp' 仓库名称。
- '"https://your-metabase-instance.com"': 请替换为您的 Metabase 实例的完整 URL 地址。
- '"YOUR_METABASE_API_KEY"': 请替换为您在 Metabase 中生成的 API 密钥。如果您选择用户名密码认证,请将 'args' 参数中的 'config' 部分修改为:'"{"metabaseUrl":"https://your-metabase-instance.com","metabaseUserEmail":"YOUR_METABASE_EMAIL","metabasePassword":"YOUR_METABASE_PASSWORD"}"',并替换相应的邮箱和密码。
基本使用方法
配置完成后,您的 MCP 客户端即可与 Metabase MCP Server 建立连接。您可以通过客户端发送 MCP 请求来调用服务器提供的资源和工具,例如:
- 列出 Metabase 仪表板: 通过客户端发送 'tools/list' 请求,并指定工具名称为 'list_dashboards',服务器将返回 JSON 格式的仪表板列表。
- 执行 SQL 查询: 通过客户端发送 'tools/call' 请求,指定工具名称为 'execute_query',并在请求参数中提供数据库 ID 和 SQL 查询语句,服务器将执行查询并返回结果数据。
- 获取仪表板详情: 通过客户端发送 'resources/read' 请求,并指定资源 URI 为 'metabase://dashboard/{dashboard_id}' (将 '{dashboard_id}' 替换为实际的仪表板 ID),服务器将返回指定仪表板的详细信息。
请参考仓库中的 'README.md' 文件和代码注释,了解更多工具和资源的使用方法。
信息
分类
商业系统