Keboola Explorer MCP Server 使用说明

项目简介

Keboola Explorer MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器,旨在连接大型语言模型 (LLM) 客户端与 Keboola Connection 数据仓库。它允许 LLM 通过标准化的 MCP 协议访问 Keboola 中的数据和功能,从而扩展 LLM 的上下文理解和数据处理能力。

主要功能点

  • 数据访问能力
    • 列出 Keboola 项目中的 buckets(数据桶)和 tables(数据表)。
    • 获取 buckets 和 tables 的详细信息,包括元数据和统计信息。
    • 列出 Keboola 项目中可用的 components(组件)及其配置。
  • 数据查询能力
    • 使用 SQL 查询 Keboola tables 中的数据。
    • 支持预览 table 数据和导出 table 数据为 CSV 格式。

安装步骤

  1. 克隆仓库
    git clone https://github.com/jordanburger/keboola-mcp-server.git
  2. 进入仓库目录
    cd keboola-mcp-server
  3. 创建并激活虚拟环境
    python3 -m venv .venv
    source .venv/bin/activate  # Linux/macOS
    .venv\Scripts\activate  # Windows
  4. 安装 Python 包
    pip3 install -e .

服务器配置

要将 Keboola Explorer MCP Server 集成到 MCP 客户端(例如 Claude Desktop),您需要配置客户端以连接到此服务器。以下是一个典型的 MCP 客户端配置示例,您需要根据您的实际环境进行调整。

请将以下 JSON 配置添加到您的 MCP 客户端的配置文件中。您需要替换以下占位符:

  • '/path/to/keboola-mcp-server': 替换为克隆仓库的实际路径。
  • 'your-keboola-storage-token': 替换为您的 Keboola Storage API Token。
  • 'https://connection.YOUR_REGION.keboola.com': 替换为您的 Keboola Storage API URL,如果您的区域是 'connection',则可以简化为 'https://connection.keboola.com'。
  • 'your-snowflake-*': 替换为您的 Snowflake 数据库连接凭据。这些凭据通常在一个只读的 Snowflake Workspace 中获取。
{
  "mcpServers": {
    "keboola-explorer": {  // 服务器名称,可以自定义
      "command": "/path/to/keboola-mcp-server/.venv/bin/python",  // Python 解释器路径,请确保指向虚拟环境中的 Python
      "args": [
        "-m",
        "keboola_mcp_server.cli",  // 运行 Keboola MCP Server 的命令
        "--log-level",
        "INFO",  // 日志级别,可选值:DEBUG, INFO, WARNING, ERROR, CRITICAL
        "--api-url",
        "https://connection.YOUR_REGION.keboola.com"  // Keboola Storage API URL,根据您的区域替换 YOUR_REGION
      ],
      "env": {
        "KBC_STORAGE_TOKEN": "your-keboola-storage-token",  // Keboola Storage API Token,用于访问 Keboola Storage API
        "PYTHONPATH": "/path/to/keboola-mcp-server/src",  // PYTHONPATH 环境变量,指向 src 目录,确保 Python 可以找到 keboola_mcp_server 包
        "KBC_SNOWFLAKE_ACCOUNT": "your-snowflake-account",  // Snowflake 账号
        "KBC_SNOWFLAKE_USER": "your-snowflake-user",     // Snowflake 用户名
        "KBC_SNOWFLAKE_PASSWORD": "your-snowflake-password", // Snowflake 密码
        "KBC_SNOWFLAKE_WAREHOUSE": "your-snowflake-warehouse", // Snowflake Warehouse 名称
        "KBC_SNOWFLAKE_DATABASE": "your-snowflake-database",   // Snowflake 数据库名称
        "KBC_SNOWFLAKE_SCHEMA": "your-snowflake-schema",     // Snowflake Schema 名称 (可选)
        "KBC_SNOWFLAKE_ROLE": "your-snowflake-role"        // Snowflake Role 名称 (可选)
      }
    }
  }
}

注意:

  • 请根据您的操作系统和 Python 环境,调整 'command' 和 'PYTHONPATH' 的路径。
  • 环境变量 'KBC_SNOWFLAKE_*' 是 Snowflake 数据库的连接信息,用于执行 SQL 查询。
  • 确保您已安装了仓库 'README.md' 中 Requirements 章节提到的依赖。

基本使用方法

  1. 启动 MCP 客户端并加载上述配置。
  2. 客户端成功连接到 Keboola Explorer MCP Server 后,您可以使用客户端提供的界面或命令来:
    • 浏览资源 (Resources):列出 buckets, tables, components 等,查看数据仓库的结构和元数据。
    • 调用工具 (Tools):使用预定义的工具,例如查询 table 数据、获取 bucket 或 table 的详细信息等。

具体操作方式取决于您使用的 MCP 客户端的功能和界面。请参考您使用的 MCP 客户端的文档。

信息

分类

数据库与文件