README
🚀 Keboola MCP 服务器手册
Keboola 的 MCP(管理控制台)服务器是一款用于与 Keboola 进行连接互动的实用工具。它提供了丰富的功能,能帮助用户高效地管理存储、执行 SQL 查询、操作组件和作业等。
✨ 主要特性
存储工具
retrieve_buckets:列出项目中的所有存储桶。get_bucket_detail:获取特定存储桶的详细信息。retrieve_bucket_tables:列出特定存储桶中的所有表。get_table_detail:获取特定表的详细信息。update_bucket_description:更新存储桶的描述。update_table_description:更新表的描述。
SQL 工具
query_table:在工作区中执行 SQL 查询。get_sql_dialect:获取工作区使用的 SQL 方言(Snowflake 或 BigQuery)。
组件工具
retrieve_components:列出所有可用组件及其配置。retrieve_transformations:列出转换配置。get_component_details:获取特定组件的详细信息。create_sql_transformation:创建新的 SQL 转换配置。
作业工具
retrieve_jobs:列出项目中的所有作业。get_job_detail:获取特定作业的详细信息。start_job:启动新组件配置的作业。
文档工具
docs_query:查询文档和帮助信息。
📦 安装指南
安装 MCP 服务器
- 克隆 Keboola MCP 服务器代码库到本地。
- 激活虚拟环境并安装依赖项:
python -m pip install -r requirements.txt
配置 MCP 服务器
需要设置以下环境变量:
KBC_API_URL:Keboola API 的 URL(例如,https://connection.YOUR_REGION.keboola.com)KBC_STORAGE_TOKEN:你的存储令牌KBC_WORKSPACE_SCHEMA:你的工作区模式(Snowflake 或 BigQuery)
💻 使用示例
启动 MCP 服务器
python -m keboola_mcp_server.cli --transport <transport-type> --api-url https://connection.YOUR_REGION.keboola.com
支持的传输类型包括:
http:通过 HTTP 端点访问。stdio:通过标准输入输出交互。sse:通过服务器发送事件(Server-Sent Events)。
使用 MCP 工具
基础用法
以下是一些常用工具的操作示例:
存储工具示例
# 检索所有存储桶
python -m keboola_mcp_server.cli retrieve-buckets --transport stdio
# 获取特定存储桶的详细信息
python -m keboola_mcp_server.cli get-bucket-detail <bucket-id> --transport stdio
SQL 工具示例
# 执行 SQL 查询
python -m keboola_mcp_server.cli query-table <table-id> "<your-sql-query>" --transport stdio
# 获取 SQL 方言
python -m keboola_mcp_server.cli get-sql-dialect --transport stdio
组件工具示例
# 检索所有组件
python -m keboola_mcp_server.cli retrieve-components --transport stdio
# 创建新的 SQL 转换配置
python -m keboola_mcp_server.cli create-sql-transformation <component-id> "<transformation-query>" --transport stdio
📚 详细文档
注意事项
⚠️ 重要提示
在生产环境中使用 MCP 服务器前,请确保所有环境变量正确设置。
💡 使用建议
定期更新依赖项以获取最新功能和安全补丁。
开发与测试
运行测试
python -m pytest tests/
提交代码
遵循标准的 Git 流程进行提交:
- 创建新功能或修复问题。
- 提交更改到本地仓库。
- 推送到远程仓库并创建 Pull Request。
故障排除
如果遇到问题,请参考Keboola 文档或联系支持团队。
通过以上步骤,你可以顺利安装、配置和使用 Keboola MCP 服务器,并根据需要进行开发和扩展。
Scan to join WeChat group