返回市场
凯布尔奥-mcp服务器

凯布尔奥-mcp服务器

作者:keboola80 星标更新:2025-11-21

项目介绍

Ask DeepWiki

Keboola MCP Server

将您的AI代理、MCP客户端(CursorClaudeWindsurfVS Code等)和其他AI助手连接到Keboola。无需编写粘合代码即可暴露数据、转换、SQL查询和作业触发器。在需要时将正确的数据交付给代理。

概览

Keboola MCP Server 是一个开源桥梁,用于连接您的Keboola项目与现代AI工具。它将Keboola的功能——如存储访问、SQL转换和作业触发器——转化为可调用的工具,适用于Claude、Cursor、CrewAI、LangChain、Amazon Q等。

功能

通过AI代理和MCP服务器,您可以:

  • 存储:直接查询表并管理表或桶描述
  • 组件:创建、列出并检查提取器、写入器、数据应用和转换配置
  • SQL:使用自然语言创建SQL转换
  • 作业:运行组件和转换,并检索作业执行详情
  • 流程:使用条件流程和编排流程构建和管理工作流管道。
  • 数据应用:创建、部署和管理显示存储数据查询的Keboola Streamlit数据应用。
  • 元数据:使用自然语言搜索、读取和更新项目文档和对象元数据
  • 开发分支:在生产之外的安全开发分支中工作,所有操作都限定于选定的分支。

🚀 快速开始:远程MCP服务器(最简单的方式)

使用Keboola MCP Server最简单的方式是通过我们的远程MCP服务器。这种托管解决方案消除了本地设置、配置或安装的需求。

什么是远程MCP服务器?

我们的远程服务器托管在每个多租户Keboola堆栈上,并支持OAuth认证。您可以通过任何支持远程SSE连接和OAuth认证的AI助手连接到它。

如何连接

  1. 获取远程服务器URL:导航至您的Keboola项目设置 → MCP服务器标签页
  2. 复制服务器URL:它看起来像这样 https://mcp.<YOUR_REGION>.keboola.com/sse
  3. 配置您的AI助手:将URL粘贴到AI助手的MCP设置中
  4. 认证:您将被提示使用您的Keboola账户进行认证并选择您的项目

支持的客户端

  • Cursor:使用项目MCP服务器设置中的“安装到Cursor”按钮,或者点击 这个按钮 安装MCP服务器
  • Claude桌面:通过设置 → 集成添加集成
  • Claude代码:使用 claude mcp add --transport http keboola <URL> 安装(详见下文)
  • Windsurf:使用远程服务器URL配置
  • Make:使用远程服务器URL配置
  • 其他MCP客户端:使用远程服务器URL配置

Claude代码设置

Claude代码是一个命令行接口工具,允许您通过终端与Claude交互。您可以使用简单的命令安装Keboola MCP服务器集成。

安装:

在您的终端中运行以下命令,将 <YOUR_REGION> 替换为您所在的Keboola区域:

claude mcp add --transport http keboola https://mcp.<YOUR_REGION>.keboola.com/mcp

区域特定命令:

区域安装命令
美国弗吉尼亚AWSclaude mcp add --transport http keboola https://mcp.keboola.com/mcp
美国弗吉尼亚GCPclaude mcp add --transport http keboola https://mcp.us-east4.gcp.keboola.com/mcp
欧洲法兰克福AWSclaude mcp add --transport http keboola https://mcp.eu-central-1.keboola.com/mcp
欧洲爱尔兰Azureclaude mcp add --transport http keboola https://mcp.north-europe.azure.keboola.com/mcp
欧洲法兰克福GCPclaude mcp add --transport http keboola https://mcp.europe-west3.gcp.keboola.com/mcp

使用:

安装后,您可以在Claude代码中通过键入 /mcp 并选择要使用的Keboola工具来使用Keboola MCP服务器。

认证:

首次在Claude代码中使用Keboola MCP服务器时,浏览器窗口会打开,提示您:

  1. 使用您的Keboola账户登录
  2. 选择要连接的项目
  3. 授权连接

认证后,您就可以直接从Claude代码中使用Keboola工具了。

详细的设置说明和区域特定URL,请参阅我们的远程服务器设置文档

使用开发分支

您可以在Keboola开发分支中安全地工作,而不会影响生产数据。远程托管的MCP服务器尊重 KBC_BRANCH_ID 参数,并将所有操作限定于指定的分支。当导航到UI中的开发分支时,您可以在URL中找到开发分支ID,例如:https://connection.us-east4.gcp.keboola.com/admin/projects/PROJECT_ID/branch/BRANCH_ID/dashboard。分支ID必须在每次请求中使用头部 X-Branch-Id: <branchId> 提供,否则MCP服务器默认使用生产分支。这应该由AI客户端或处理服务器连接的环境来管理。


本地MCP服务器设置(自定义或开发方式)

在自己的机器上运行MCP服务器以获得完全控制和轻松开发。当您想要定制工具、本地调试或快速迭代时选择此选项。您将克隆仓库,根据服务器传输方式通过环境变量或头部设置Keboola凭证,安装依赖项并启动服务器。这种方法提供了最大的灵活性(自定义工具、本地日志记录、离线迭代),但需要手动设置,您自己管理更新和密钥。

服务器支持多种传输选项,可以通过提供 --transport <transport> 参数来选择:

  • stdio - 当未指定 --transport 时默认使用。标准输入/输出,通常用于本地部署与单个客户端。
  • streamable-http - 通过HTTP远程运行服务器,具有双向流通道,允许客户端和服务器持续交换消息。通过 <url>/mcp 连接(例如,http://localhost:8000/mcp)。
  • sse - 已弃用,请改用 streamable-http。通过Server-Sent Events (SSE) 远程运行服务器,实现单向事件流从服务器到客户端。通过 <url>/sse 连接(例如,http://localhost:8000/sse)。
  • http-compat - 支持SSE和streamable-http的自定义传输。目前在Keboola远程服务器上使用,但很快将仅使用 streamable-http

对于客户端-服务器通信,必须提供Keboola凭证以启用与您Keboola区域项目的交互。所需参数包括:KBC_STORAGE_TOKENKBC_STORAGE_API_URLKBC_WORKSPACE_SCHEMA 和可选的 KBC_BRANCH_ID。可以采用两种方式提供这些参数:

  • 个人使用(主要用于stdio传输):在启动服务器之前设置环境变量。所有请求都将重用这些预定义的凭证。
  • 多用户使用:在请求头中包含变量,以便每个请求使用提供的凭证。

KBC_STORAGE_TOKEN

这是您用于Keboola的身份验证令牌:

有关如何创建和管理存储API令牌的说明,请参阅官方Keboola文档

注意:如果您希望MCP服务器具有有限访问权限,请使用自定义存储令牌;如果您希望MCP访问项目中的所有内容,请使用主令牌。

KBC_WORKSPACE_SCHEMA

这是您在Keboola中的工作区标识符,用于SQL查询。但是,只有在使用自定义存储令牌而不是主令牌时才需要

注意:手动创建工作区时,请检查授予对所有项目数据的只读访问权限选项。

注意:在BigQuery工作区中,KBC_WORKSPACE_SCHEMA被称为数据集名称,只需点击连接并复制数据集名称。

KBC_STORAGE_API_URL(Keboola区域)

您的Keboola区域API URL取决于您的部署区域。您可以通过查看登录到Keboola项目时浏览器中的URL来确定您的区域:

区域API URL
AWS北美https://connection.keboola.com
AWS欧洲https://connection.eu-central-1.keboola.com
Google Cloud欧盟https://connection.europe-west3.gcp.keboola.com
Google Cloud美国https://connection.us-east4.gcp.keboola.com
Azure欧盟https://connection.north-europe.azure.keboola.com

KBC_BRANCH_ID(可选)

为了在特定的Keboola开发分支上操作,使用 KBC_BRANCH_ID 参数设置分支ID。MCP服务器将其功能限定于指定的分支,确保所有更改保持隔离且不影响生产分支。

  • 如果未提供,默认使用生产分支。
  • 对于开发工作,将 KBC_BRANCH_ID 设置为分支的数字ID(例如,123456)。您可以在导航到UI中的开发分支时,在URL中找到开发分支ID,例如:https://connection.us-east4.gcp.keboola.com/admin/projects/PROJECT_ID/branch/BRANCH_ID/dashboard
  • 在远程传输上,您可以使用HTTP头部 X-Branch-Id: <branchId>KBC_BRANCH_ID: <branchId> 来覆盖每个请求。

安装

确保您有:

  • 安装了Python 3.10+
  • 具有管理员权限的Keboola项目访问权
  • 您首选的MCP客户端(Claude、Cursor等)

注意:确保已安装 uv。MCP客户端将使用它自动下载并运行Keboola MCP服务器。 安装uv

macOS/Linux

#if homebrew未安装在您的机器上,请使用:
# /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 使用Homebrew安装
brew install uv

Windows

# 使用安装脚本
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

# 或使用pip
pip install uv

# 或使用winget
winget install --id=astral-sh.uv -e

更多安装选项,请参阅官方uv文档

运行Keboola MCP服务器

根据您的需求,有四种使用Keboola MCP服务器的方法:

方案A:集成模式(推荐)

在此模式下,Claude或Cursor会自动为您启动MCP服务器。您不需要在终端中运行任何命令

  1. 配置您的MCP客户端(Claude/Cursor)以适当的设置
  2. 客户端将在需要时自动启动MCP服务器

Claude桌面配置

  1. 转到Claude(屏幕左上角)-> 设置 → 开发者 → 编辑配置(如果看不到claude_desktop_config.json,请创建它)
  2. 添加以下配置:
  3. 重启Claude桌面以使更改生效
{
  "mcpServers": {
    "keboola": {
      "command": "uvx",
      "args": ["keboola_mcp_server --transport <transport>"],
      "env": {
        "KBC_STORAGE_API_URL": "https://connection.YOUR_REGION.keboola.com",
        "KBC_STORAGE_TOKEN": "your_keboola_storage_token",
        "KBC_WORKSPACE_SCHEMA": "your_workspace_schema",
        "KBC_BRANCH_ID": "your_branch_id_optional"
      }
    }
  }
}

配置文件位置:

  • macOS~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows:%APPDATA%\Claude\claude_desktop_config.json

Cursor配置

  1. 转到设置 → MCP
  2. 点击 "+ 添加新的全局MCP服务器"
  3. 使用以下设置配置:
{
  "mcpServers": {
    "keboola": {
      "command": "uvx",
      "args": ["keboola_mcp_server --transport <transport>"],
      "env": {
        "KBC_STORAGE_API_URL": "https://connection.YOUR_REGION.keboola.com",
       [...]
}