Keboola MCP 服务器
将您的 AI 代理、MCP 客户端( Cursor 、 Claude 、 Windsurf 、 VS Code等)以及其他 AI 助手连接到 Keboola。公开数据、转换、SQL 查询和作业触发器——无需任何胶水代码。随时随地向代理提供所需的正确数据。
概述
Keboola MCP 服务器是 Keboola 项目与现代 AI 工具之间的开源桥梁。它将 Keboola 的功能(例如存储访问、SQL 转换和作业触发器)转换为可供 Claude、Cursor、CrewAI、LangChain、Amazon Q 等平台调用的工具。
特征
- 存储:直接查询表并管理表或存储桶描述
- 组件:创建、列出和检查提取器、编写器、数据应用程序和转换配置
- SQL :使用自然语言创建 SQL 转换
- 作业:运行组件和转换,并检索作业执行详细信息
- 元数据:使用自然语言搜索、阅读和更新项目文档和对象元数据
准备工作
确保您拥有:
- [ ] 已安装 Python 3.10+
- [ ] 以管理员权限访问 Keboola 项目
- [ ] 您首选的 MCP 客户端(Claude、Cursor 等)
注意:请确保您已安装uv
客户端将使用它自动下载并运行 Keboola MCP 服务器。安装 uv :
macOS/Linux :
窗户:
有关更多安装选项,请参阅官方 uv 文档。
在设置 MCP 服务器之前,您需要三个关键信息:
KBC_STORAGE_TOKEN
这是您的 Keboola 身份验证令牌:
有关如何创建和管理存储 API 令牌的说明,请参阅官方 Keboola 文档。
注意:如果您希望 MCP 服务器具有有限的访问权限,请使用自定义存储令牌,如果您希望 MCP 访问项目中的所有内容,请使用主令牌。
KBC_工作空间_模式
这标识了您在 Keboola 中的工作区,并且是 SQL 查询所必需的:
按照此Keboola 指南获取您的 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 |
BigQuery 特定设置
如果您的 Keboola 项目使用 BigQuery 后端,除了KBC_STORAGE_TOKEN
和KBC_WORKSPACE_SCHEMA
之外,您还需要设置GOOGLE_APPLICATION_CREDENTIALS
环境变量:
- 转到您的 Keboola BigQuery 工作区并显示其凭据(单击“连接”按钮)
- 将凭证文件下载到本地磁盘。它是一个纯 JSON 文件
- 将下载的 JSON 凭证文件的完整路径设置为
GOOGLE_APPLICATION_CREDENTIALS
环境变量 - 这将授予您的 MCP 服务器实例访问 Google Cloud 中的 BigQuery 工作区的权限。注意:KBC_WORKSPACE_SCHEMA 在 BigQuery 工作区中称为数据集名称,您只需单击“连接”并复制数据集名称即可。
运行 Keboola MCP 服务器
有四种方法可以使用 Keboola MCP 服务器,具体取决于您的需求:
选项 A:集成模式(推荐)
在此模式下,Claude 或 Cursor 会自动为您启动 MCP 服务器。您无需在终端中运行任何命令。
- 使用适当的设置配置您的 MCP 客户端(Claude/Cursor)
- 客户端将在需要时自动启动 MCP 服务器
Claude桌面配置
- 转到 Claude(屏幕左上角)-> 设置 → 开发人员 → 编辑配置(如果您没有看到 claude_desktop_config.json,请创建它)
- 添加以下配置:
- 重新启动 Claude 桌面以��更改生效
注意:对于 BigQuery 用户,请在“env”中添加以下行:{}:“GOOGLE_APPLICATION_CREDENTIALS”:“/full/path/to/credentials.json”
配置文件位置:
- macOS :
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows :
%APPDATA%\Claude\claude_desktop_config.json
游标配置
- 前往“设置”→“MCP”
- 点击“+ 添加新的全局 MCP 服务器”
- 使用以下设置进行配置:
注意:对于 BigQuery 用户,请在“env”中添加以下行:{}:“GOOGLE_APPLICATION_CREDENTIALS”:“/full/path/to/credentials.json”
Windows WSL 的光标配置
使用 Cursor AI 从 Windows Subsystem for Linux 运行 MCP 服务器时,请使用以下配置:
其中/wsl_path/to/keboola-mcp-server/.env
文件包含环境变量:
选项 B:本地开发模式
对于从事 MCP 服务器代码本身的开发人员:
- 克隆存储库并设置本地环境
- 配置 Claude/Cursor 以使用您的本地 Python 路径:
注意:对于 BigQuery 用户,请在“env”中添加以下行:{}:“GOOGLE_APPLICATION_CREDENTIALS”:“/full/path/to/credentials.json”
选项 C:手动 CLI 模式(仅用于测试)
您可以在终端中手动运行服务器进行测试或调试:
注意:此模式主要用于调试或测试。正常使用 Claude 或 Cursor 时,无需手动运行服务器。
选项 D:使用 Docker
我需要自己启动服务器吗?
设想 | 需要手动运行吗? | 使用此设置 |
---|---|---|
使用 Claude/Cursor | 不 | 在应用程序设置中配置 MCP |
本地开发 MCP | 不(克劳德先开口) | 将配置指向 python 路径 |
手动测试 CLI | 是的 | 使用终端运行 |
使用 Docker | 是的 | 运行docker容器 |
使用 MCP 服务器
一旦您的 MCP 客户端(Claude/Cursor)配置并运行,您就可以开始查询您的 Keboola 数据:
验证您的设置
您可以从一个简单的查询开始来确认一切正常:
您可以做什么的示例
数据探索:
- “哪些表包含客户信息?”
- “运行查询以查找按收入排名前 10 位的客户”
数据分析:
- “按地区分析我上一季度的销售数据”
- “找到顾客年龄和购买频率之间的相关性”
数据管道:
- “创建一个连接客户表和订单表的 SQL 转换”
- “启动我的 Salesforce 组件的数据提取作业”
兼容性
MCP 客户端支持
MCP 客户端 | 支持状态 | 连接方法 |
---|---|---|
克劳德(桌面和网络) | ✅ 支持,测试 | 标准输入输出 |
光标 | ✅ 支持,测试 | 标准输入输出 |
风帆冲浪、Zed、Replit | ✅ 支持 | 标准输入输出 |
Codeium、Sourcegraph | ✅ 支持 | HTTP+SSE |
自定义 MCP 客户端 | ✅ 支持 | HTTP+SSE 或 stdio |
支持的工具
注意: Keboola MCP 处于 1.0 之前的版本,因此可能会发生一些重大更改。您的 AI 代理将自动适应新工具。
类别 | 工具 | 描述 |
---|---|---|
贮存 | retrieve_buckets | 列出 Keboola 项目中的所有存储桶 |
get_bucket_detail | 检索有关特定存储桶的详细信息 | |
retrieve_bucket_tables | 返回特定存储桶内的所有表 | |
get_table_detail | 提供特定表的详细信息 | |
update_bucket_description | 更新 bucket 的描述 | |
update_column_description | 更新表中给定列的描述。 | |
update_table_description | 更新表的描述 | |
SQL | query_table | 针对您的数据执行自定义 SQL 查询 |
get_sql_dialect | 标识您的工作区是否使用 Snowflake 或 BigQuery SQL 方言 | |
成分 | create_component_root_configuration | 使用自定义参数创建组件配置 |
create_component_row_configuration | 使用自定义参数创建组件配置行 | |
create_sql_transformation | 使用自定义查询创建 SQL 转换 | |
find_component_id | 返回与给定查询匹配的组件 ID 列表 | |
get_component | 获取特定组件的 ID 信息 | |
get_component_configuration | 获取有关特定组件/转换配置的信息 | |
get_component_configuration_examples | 检索特定组件的配置示例 | |
retrieve_component_configurations | 检索项目中现有组件的配置 | |
retrieve_transformations | 检索项目中的转换配置 | |
update_component_root_configuration | 更新特定组件配置 | |
update_component_row_configuration | 更新特定组件配置行 | |
update_sql_transformation_configuration | 更新现有的 SQL 转换配置 | |
工作 | retrieve_jobs | 按状态、组件或配置列出和过滤作业 |
get_job_detail | 返回有关特定工作的全面详细信息 | |
start_job | 触发组件或转换作业运行 | |
文档 | docs_query | 根据自然语言查询搜索 Keboola 文档 |
故障排除
常见问题
问题 | 解决方案 |
---|---|
身份验证错误 | 验证KBC_STORAGE_TOKEN 是否有效 |
工作区问题 | 确认KBC_WORKSPACE_SCHEMA 正确 |
连接超时 | 检查网络连接 |
发展
安装
基本设置:
通过基本设置,您可以使用uv run tox
来运行测试并检查代码样式。
推荐设置:
通过推荐的设置,将安装用于测试和代码样式检查的包,这允许 VsCode 或 Cursor 等 IDE 在开发期间检查代码或运行测试。
集成测试
要在本地运行集成测试,请使用uv run tox -e integtests
。注意:您需要设置以下环境变量:
INTEGTEST_STORAGE_API_URL
INTEGTEST_STORAGE_TOKEN
INTEGTEST_WORKSPACE_SCHEMA
为了获得这些值,您需要一个专门的 Keboola 项目进行集成测试。
更新uv.lock
如果您添加或删除了依赖项,请更新uv.lock
文件。创建发布版本时,也请考虑使用较新的依赖项版本更新锁 ( uv lock --upgrade
)。
支持和反馈
⭐ 获取帮助、报告错误或请求功能的主要方式是在 GitHub 上打开问题。⭐
开发团队会积极监控问题,并尽快做出响应。如需了解 Keboola 的常规信息,请使用以下资源。
资源
连接
You must be authenticated.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
该服务器促进与 Keboola 的存储 API 的交互,使用户能够通过 Claude Desktop 有效地浏览和管理项目存储桶、表和组件。
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityThis server enables interaction between Neo4j databases and Claude Desktop, allowing users to execute Cypher queries, create nodes, and establish relationships in the database.Last updated -37224TypeScriptMIT License
- -securityAlicense-qualityThe Claude Dev Server enables direct interaction with the file system within a specified workspace, allowing users to perform file and directory operations and implement code artifacts in software development using natural language commands.Last updated -2PythonMIT License
- -securityAlicense-qualityThe server facilitates access to Julia documentation and source code through Claude Desktop, allowing users to retrieve information on Julia packages, modules, types, functions, and methods.Last updated -402JavaScriptMIT License
- AsecurityFlicenseAqualityA server that enables Claude Desktop users to access the Claude API directly, allowing them to bypass Professional Plan limitations and use advanced features like custom system prompts and conversation management.Last updated -15Python