将您的AI代理、MCP客户端(Cursor、Claude、Windsurf、VS Code等)和其他AI助手连接到Keboola。无需编写粘合代码即可暴露数据、转换、SQL查询和作业触发器。在需要时将正确的数据交付给代理。
Keboola MCP Server 是一个开源桥梁,用于连接您的Keboola项目与现代AI工具。它将Keboola的功能——如存储访问、SQL转换和作业触发器——转化为可调用的工具,适用于Claude、Cursor、CrewAI、LangChain、Amazon Q等。
通过AI代理和MCP服务器,您可以:
使用Keboola MCP Server最简单的方式是通过我们的远程MCP服务器。这种托管解决方案消除了本地设置、配置或安装的需求。
我们的远程服务器托管在每个多租户Keboola堆栈上,并支持OAuth认证。您可以通过任何支持远程SSE连接和OAuth认证的AI助手连接到它。
MCP服务器标签页https://mcp.<YOUR_REGION>.keboola.com/sseclaude mcp add --transport http keboola <URL> 安装(详见下文)Claude代码是一个命令行接口工具,允许您通过终端与Claude交互。您可以使用简单的命令安装Keboola MCP服务器集成。
安装:
在您的终端中运行以下命令,将 <YOUR_REGION> 替换为您所在的Keboola区域:
claude mcp add --transport http keboola https://mcp.<YOUR_REGION>.keboola.com/mcp
区域特定命令:
| 区域 | 安装命令 |
|---|---|
| 美国弗吉尼亚AWS | claude mcp add --transport http keboola https://mcp.keboola.com/mcp |
| 美国弗吉尼亚GCP | claude mcp add --transport http keboola https://mcp.us-east4.gcp.keboola.com/mcp |
| 欧洲法兰克福AWS | claude mcp add --transport http keboola https://mcp.eu-central-1.keboola.com/mcp |
| 欧洲爱尔兰Azure | claude mcp add --transport http keboola https://mcp.north-europe.azure.keboola.com/mcp |
| 欧洲法兰克福GCP | claude mcp add --transport http keboola https://mcp.europe-west3.gcp.keboola.com/mcp |
使用:
安装后,您可以在Claude代码中通过键入 /mcp 并选择要使用的Keboola工具来使用Keboola MCP服务器。
认证:
首次在Claude代码中使用Keboola MCP服务器时,浏览器窗口会打开,提示您:
认证后,您就可以直接从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服务器以获得完全控制和轻松开发。当您想要定制工具、本地调试或快速迭代时选择此选项。您将克隆仓库,根据服务器传输方式通过环境变量或头部设置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_TOKEN、KBC_STORAGE_API_URL、KBC_WORKSPACE_SCHEMA 和可选的 KBC_BRANCH_ID。可以采用两种方式提供这些参数:
这是您用于Keboola的身份验证令牌:
有关如何创建和管理存储API令牌的说明,请参阅官方Keboola文档。
注意:如果您希望MCP服务器具有有限访问权限,请使用自定义存储令牌;如果您希望MCP访问项目中的所有内容,请使用主令牌。
这是您在Keboola中的工作区标识符,用于SQL查询。但是,只有在使用自定义存储令牌而不是主令牌时才需要:
注意:手动创建工作区时,请检查授予对所有项目数据的只读访问权限选项。
注意:在BigQuery工作区中,KBC_WORKSPACE_SCHEMA被称为数据集名称,只需点击连接并复制数据集名称。
您的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 |
为了在特定的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。X-Branch-Id: <branchId> 或 KBC_BRANCH_ID: <branchId> 来覆盖每个请求。确保您有:
注意:确保已安装 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服务器的方法:
在此模式下,Claude或Cursor会自动为您启动MCP服务器。您不需要在终端中运行任何命令。
{
"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"
}
}
}
}
配置文件位置:
~/Library/Application Support/Claude/claude_desktop_config.json{
"mcpServers": {
"keboola": {
"command": "uvx",
"args": ["keboola_mcp_server --transport <transport>"],
"env": {
"KBC_STORAGE_API_URL": "https://connection.YOUR_REGION.keboola.com",
[...]
}