KubeBlocks云MCP服务器
KubeBlocks云MCP服务器是 模型上下文协议(MCP) 与KubeBlocks Cloud API无缝集成的服务器,使AI助手能够与 KubeBlocks通过标准化的工具调用接口调用云资源。
](https://go.mod) 
用例
- 自动化KubeBlocks云资源管理
- 从KubeBlocks Cloud环境中检索和分析数据
- 构建与KubeBlocks云生态系统交互的AI驱动工具
- 使AI助手能够配置和管理数据库实例
特性
- 基于MCP的API,用于访问KubeBlocks云资源
- 通过KubeBlocks Cloud API密钥和秘密进行安全身份验证
- 支持常见的KubeBlocks云资源:
- 组织 - 环境 - 实例 - 备份
- 通过翻译助手提供国际化支持
- 通过StdioServer进行安全通信
先决条件
- Go 1.20+(与MCP Go软件包兼容)
- KubeBlocks云API证书-您需要API密钥名称和密钥
安装
从源代码构建
git clone https://github.com/apecloud/kb-cloud-mcp-server.git
cd kb-cloud-mcp-server
go mod tidy
go build -o kb-cloud-mcp-server ./cmd/server使用VS代码
将以下JSON块添加到VS Code中的用户设置(JSON)文件中。您可以按 Ctrl + Shift + P 和打字 Preferences: Open User Settings (JSON).
您可以选择将其添加到名为的文件中 .vscode/mcp.json 在您的工作区中与他人共享配置。
请注意mcp中不需要密钥.vscode/mcp.json文件。
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "kb_cloud_api_key",
"description": "KubeBlocks Cloud API Key Name",
"password": false
},
{
"type": "promptString",
"id": "kb_cloud_api_secret",
"description": "KubeBlocks Cloud API Secret",
"password": true
}
],
"servers": {
"kbcloud": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"KB_CLOUD_API_KEY_NAME",
"-e",
"KB_CLOUD_API_KEY_SECRET",
"apecloud/kb-cloud-mcp-server:latest"
],
"env": {
"KB_CLOUD_API_KEY_NAME": "${input:kb_cloud_api_key}",
"KB_CLOUD_API_KEY_SECRET": "${input:kb_cloud_api_secret}"
}
}
}
}
}更多关于在VS Code中使用MCP服务器工具的信息 代理模式文档.
用法
环境变量
服务器支持以下环境变量:
# KubeBlocks Cloud API credentials (required)
export KB_CLOUD_API_KEY_NAME=your-api-key-name
export KB_CLOUD_API_KEY_SECRET=your-api-key-secret
export KB_CLOUD_SITE=https://api.apecloud.com # Optional: KubeBlocks Cloud API endpoint
# Server configuration
export KB_CLOUD_MCP_LOG_LEVEL=info # debug, info, warn, error
export KB_CLOUD_MCP_EXPORT_TRANSLATIONS=true # Optional: Export translations to JSON file
export KB_CLOUD_DEBUG=true # Optional: Enable debug mode for KubeBlocks Cloud API client启动服务器
./kb-cloud-mcp-server或者使用命令行标志:
./kb-cloud-mcp-server stdio --api-key=your-api-key-name --api-secret=your-api-key-secret配置文件
您还可以使用配置文件:
# .kb-cloud-mcp-server.yaml
log_level: info
api_key: your-api-key-name
api_secret: your-api-key-secret
site_url: https://api.apecloud.com然后使用以下命令启动服务器:
./kb-cloud-mcp-server stdio --config=.kb-cloud-mcp-server.yaml可用的MCP工具
服务器提供以下MCP工具用于与KubeBlocks云资源交互:
组织
- 列表_组织 -列出您有权访问的所有组织
- 无需参数
- get_组织 -获取特定组织的详细信息
- organizationId:组织唯一标识符(字符串,必填)
环境
- list_environment -列出组织内的所有环境
- organizationId:组织唯一标识符(字符串,必填)
- get_environment -获取特定环境的详细信息
- organizationId:组织唯一标识符(字符串,必填) - environmentId:环境唯一标识符(字符串,必填)
实例
- list_instances -列出环境中的所有实例
- organizationId:组织唯一标识符(字符串,必填) - environmentId:环境唯一标识符(字符串,必填)
- get_instance -获取特定实例的详细信息
- organizationId:组织唯一标识符(字符串,必填) - environmentId:环境唯一标识符(字符串,必填) - instanceId:实例唯一标识符(字符串,必填)
备份
- 列表备份 -列出实例的所有备份
- organizationId:组织唯一标识符(字符串,必填) - environmentId:环境唯一标识符(字符串,必填) - instanceId:实例唯一标识符(字符串,必填)
- get_backup -获取特定备份的详细信息
- organizationId:组织唯一标识符(字符串,必填) - environmentId:环境唯一标识符(字符串,必填) - instanceId:实例唯一标识符(字符串,必填) - backupId:备份唯一标识符(字符串,必填)
图书馆使用情况
该模块导出的Go API当前应被视为不稳定,并可能发生中断更改。未来,我们可能会提供稳定;如果存在有价值的用例,请提交一个问题。
许可证
此项目根据Apache 2.0许可证获得许可-请参阅 许可证 文件以获取详细信息。
