项目简介

该项目是一个基于Model Context Protocol (MCP) 的服务器,旨在通过MCP协议将Metabase的功能暴露给AI助手或LLM客户端。它允许AI模型查询Metabase数据库、获取元数据以及执行Metabase中定义的操作。

主要功能点

主要功能包括:

  • 访问Metabase中配置的数据库列表
  • 获取数据库的详细元数据(如表、字段信息)
  • 查看数据库中表之间的关系
  • 列出和执行Metabase中创建的各种业务操作

这些功能以工具的形式通过MCP协议提供给AI助手调用,赋能AI助手理解和操作您的业务数据和流程。

安装步骤

安装方式:

推荐使用Docker:

  1. 克隆仓库。
  2. 进入仓库目录。
  3. 运行 'docker-compose up -d' 命令构建并启动服务。

手动安装:

  1. 克隆仓库。
  2. 进入仓库目录。
  3. 运行 'pip install -r requirements.txt' 安装依赖。
  4. 运行 'python -m src.server.web_interface' 启动配置界面进行Metabase连接配置(详见下方)。
  5. 运行 'python -m src.server.mcp_server' 启动MCP服务器。

服务器配置

MCP客户端(如您使用的AI助手)需要配置如何启动该MCP服务器进程。通常,您需要在AI助手的配置中添加一个新的MCP服务端,配置其启动命令和参数。具体的配置格式取决于您的AI助手,但核心是告知助手运行以下命令来启动这个Metabase MCP服务器:

启动命令示例 (针对手动安装):

'python -m src.server.mcp_server'

启动命令示例 (针对Docker):

如果您使用Docker,启动命令可能会指向一个脚本或容器入口点。例如,如果Docker容器名为 'metabase-mcp',并且容器配置为启动时运行MCP服务器,则命令可能是 'docker start -a metabase-mcp' 或类似指向容器内执行MCP启动脚本的命令。请查阅您的AI助手或MCP客户端的具体配置文档。

Metabase连接配置:

在启动MCP服务器之前,您需要配置Metabase的URL和API Key。

  • 使用Web界面 (推荐):
    1. 手动安装后运行 'python -m src.server.web_interface' 或 Docker启动后访问 'http://localhost:5001' (默认端口)。
    2. 在界面中输入您的Metabase URL 和 API Key。
    3. 点击保存并测试连接。配置将保存到'.env'文件中。
  • 手动编辑'.env'文件:
    1. 在项目根目录创建或编辑 '.env' 文件。
    2. 添加或修改以下行(API Key 可以加密,但首次设置时输入明文通过Web界面保存更方便):
      METABASE_URL=您的Metabase实例URL (例如: http://localhost:3000)
      METABASE_API_KEY=您的Metabase API Key
      SECRET_KEY=用于加密API Key的密钥 (首次运行时会自动生成,建议保留)

基本使用方法

配置并启动MCP服务器后,支持MCP协议的AI助手将能够发现并调用由该服务器提供的Metabase相关工具(如 'list_databases', 'execute_action' 等)。AI助手会根据用户的请求(例如“列出Metabase中的所有数据库”、“执行某个Metabase操作”)选择合适的工具,并向MCP服务器发送对应的JSON-RPC请求。服务器执行工具功能并返回结果,AI助手再根据结果生成回复给用户。

您也可以通过Web界面(手动安装后运行 'python -m src.server.web_interface' 或 Docker启动后访问 'http://localhost:5001')手动测试各项工具的功能。

信息

分类

数据库与文件