项目简介
Terrakube MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为大型语言模型(LLM)客户端提供与 Terrakube 基础设施管理平台交互的能力。通过该服务器,LLM 客户端可以安全、便捷地管理 Terrakube 中的组织、工作区、模块和变量等资源。
主要功能点
- 组织管理: 支持创建、查看、更新和删除 Terrakube 组织。
- 工作区管理: 支持创建、查看、更新和删除 Terrakube 工作区。
- 模块管理: 支持创建、查看、更新和删除 Terrakube 模块。
- 变量管理: 支持创建、查看、更新和删除 Terrakube 变量。
- 全面的 API 集成: 完全集成了 Terrakube API,实现无缝操作。
- 类型安全: 使用 TypeScript 构建,提供增强的类型安全性和开发体验。
- 强大的错误处理: 具备完善的错误处理机制,提供清晰的错误消息。
- 灵活的环境配置: 通过环境变量进行灵活配置。
安装步骤
-
克隆仓库
git clone https://github.com/azbuilder/terrakube-mcp-server.git cd terrakube-mcp-server -
安装依赖
npm install -
构建项目
npm run build
服务器配置
MCP 客户端需要配置以下 JSON 格式信息以连接 Terrakube MCP Server。
{ "mcpServers": { "terrakube": { // 服务器名称,可以自定义 "command": "npx", // 启动命令,npx 用于执行本地或 npm 包 "args": [ // 启动参数 "-y", // npx 参数,自动确认安装包 "@terrakube/mcp-server" // 执行的 npm 包,这里指向 @terrakube/mcp-server,实际仓库名为 @AzBuilder/mcp-server-terrakube,但根据README的Claude Desktop配置,这里应为 @terrakube/mcp-server。可能存在npm包名和仓库名不一致的情况,或者README配置有误。建议用户尝试 '@AzBuilder/mcp-server-terrakube' 或 '@terrakube/mcp-server' ], "env": { // 环境变量 "TERRAKUBE_API_URL": "<YOUR_API_URL>", // Terrakube API 的 URL,例如:https://app.terrakube.io/api/v1 "TERRAKUBE_PAT_TOKEN": "<YOUR_PAT_TOKEN>" // Terrakube 个人访问令牌 (Personal Access Token) } } } }
注意:
- 请将 '<YOUR_API_URL>' 替换为您的 Terrakube API 地址。
- 请将 '<YOUR_PAT_TOKEN>' 替换为您的 Terrakube 个人访问令牌。您需要在 Terrakube 控制台中生成个人访问令牌。
- 'server name' 可以自定义,例如 "terrakube",用于在 MCP 客户端中标识该服务器。
- 'command' 和 'args' 指定了启动 Terrakube MCP Server 的命令。这里使用 'npx' 运行 '@terrakube/mcp-server' npm 包。 请注意,根据实际情况,您可能需要调整 'args' 中的 npm 包名称,例如尝试 '@AzBuilder/mcp-server-terrakube'。
- 'env' 中配置了 Terrakube API 访问所需的 'API URL' 和 'PAT_TOKEN' 环境变量。
基本使用方法
- 确保 Terrakube MCP Server 已成功安装和配置。
- 在支持 MCP 协议的 LLM 客户端(例如 Claude Desktop)中配置上述服务器信息。
- LLM 客户端将通过 MCP 协议与 Terrakube MCP Server 通信。
- 您可以通过 LLM 客户端,使用自然语言指令调用 Terrakube MCP Server 提供的工具,例如:
- 列出所有组织
- 获取指定工作区的详细信息
- 创建一个新的变量
- 等等。
具体可用的工具和参数请参考仓库 README.md 文件中 "Tools" 部分的详细描述。
信息
分类
开发者工具