metabase-server MCP 服务器是一个用于 Metabase 集成的 Model Context Protocol 服务器。它基于 TypeScript 构建,实现了与 Metabase API 的集成,能让 AI 助手与 Metabase 交互,提供对仪表板、问题/卡片和数据库等资源的访问,以及列出和执行 Metabase 查询等工具能力。
metabase-server MCP 服务器是基于 TypeScript 的 MCP 服务器,实现了与 Metabase API 的集成,可让 AI 助手与 Metabase 交互,提供对各类资源的访问和操作能力。
metabase:// URI 列出和访问 Metabase 资源。list_dashboards - 列出 Metabase 中的所有仪表板。list_cards - 列出 Metabase 中的所有卡片/问题。list_databases - 列出 Metabase 中的所有数据库。execute_card - 执行一个 Metabase 问题/卡片并获取结果。get_dashboard_cards - 获取仪表板中的所有卡片。execute_query - 对 Metabase 数据库执行 SQL 查询。在运行服务器之前,需要设置以下环境变量:
# 必要的环境变量
export METABASE_URL=https://your-metabase-instance.com
export METABASE_USERNAME=your_username
export METABASE_PASSWORD=your_password
您可以在 shell 配置文件中设置这些环境变量,或使用一个 package.json 文件配合 dotenv 包。
安装依赖项:
npm install
构建服务器:
npm run build
带自动重建的开发:
npm run watch
要与 Claude Desktop 使用,请添加服务器配置:
在 MacOS 上:~/Library/Application Support/Claude/claude_desktop_config.json
在 Windows 上:%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"metabase-server": {
"command": "/path/to/metabase-server/build/index.js",
"env": {
"METABASE_URL": "https://your-metabase-instance.com",
"METABASE_USERNAME": "your_username",
"METABASE_PASSWORD": "your_password"
}
}
}
}
注意:您也可以通过系统环境变量设置这些变量,而不是在配置文件中。
要通过 Smithery 自动安装 metabase-server:
npx -y @smithery/cli install @imlewc/metabase-server --client claude
由于 MCP 服务器通过标准输入输出进行通信,调试可能具有挑战性。我们推荐使用 MCP Inspector,它作为一个包脚本提供:
npm run inspector
Inspector 将提供一个浏览器中访问调试工具的 URL。