项目简介
'mcp-server-terrakube' 是一个基于 Model Context Protocol (MCP) 实现的服务器,旨在将 Terrakube 平台的强大功能暴露给大型语言模型 (LLM) 客户端。它允许 LLM 以结构化的方式调用 Terrakube 的 API,从而实现自动化管理和操作,例如创建、更新、查询和删除工作空间、变量、模块和组织。
主要功能点
- 工作空间管理: 创建、更新、删除、获取和列出 Terrakube 工作空间。
- 变量管理: 创建、更新、删除、获取和列出工作空间中的变量。
- 模块管理: 创建、更新、删除、获取和列出组织中的模块。
- 组织管理: 创建、更新、删除、获取和列出 Terrakube 组织。
- 类型安全: 使用 TypeScript 构建,提供更好的开发体验和代码可靠性。
- API 集成: 与 Terrakube 官方 API 深度集成,确保操作的无缝性。
安装步骤
- 克隆仓库:
git clone https://github.com/terrakube-io/mcp-server-terrakube.git cd mcp-server-terrakube - 安装依赖:
npm install - 构建项目:
npm run build - 配置环境变量: 在项目根目录创建 '.env' 文件,并填入您的 Terrakube API 地址和个人访问令牌:
TERRAKUBE_API_URL=<您的Terrakube API地址> TERRAKUBE_PAT_TOKEN=<您的个人访问令牌>
服务器配置
该 MCP 服务器旨在与兼容 MCP 的客户端(如 Claude Desktop)配合使用。您需要在客户端的配置文件中添加以下 JSON 配置,以便客户端能够发现并启动此服务器。
{ "mcpServers": { "terrakube": { "command": "npx", "args": [ "-y", "@terrakube/mcp-server" ], "env": { "TERRAKUBE_API_URL": "<您的Terrakube API地址>", "TERRAKUBE_PAT_TOKEN": "<您的个人访问令牌>" } } } }
配置参数说明:
- 'terrakube': 您可以为这个 MCP 服务器实例指定一个唯一的名称。
- 'command': 启动 MCP 服务器的命令。这里使用 'npx' 来运行已发布的 '@terrakube/mcp-server' 包。
- 'args': 传递给 'command' 的参数列表。
- 'env': 包含 MCP 服务器所需的环境变量。
- 'TERRAKUBE_API_URL': 替换为您的 Terrakube API 服务地址。
- 'TERRAKUBE_PAT_TOKEN': 替换为具有 Terrakube 操作权限的个人访问令牌。
基本使用方法
配置完成后,您的 MCP 客户端(例如 Claude Desktop)将能够自动检测并连接到 Terrakube MCP 服务器。您可以通过向 LLM 提问或发出指令来利用 Terrakube 的功能,例如:
- "列出我的所有 Terrakube 组织。"
- "在 'my-org' 组织下创建一个名为 'dev-workspace' 的工作空间,使用 Terraform 1.0.0。"
- "在 'my-org' 的 'dev-workspace' 中设置一个名为 'database_password' 的敏感变量,值为 'secret123'。"
LLM 会自动识别并调用相应的 MCP 工具来执行您的请求。
信息
分类
开发者工具