一种模型上下文协议服务器,通过自然语言管理Terrakube基础设施,处理工作区管理、变量、模块和组织操作。
cloud-platformsdeveloper-tools
417 查看 · 2026-07-07 更新
简介
一种模型上下文协议服务器,通过自然语言管理Terrakube基础设施,处理工作区管理、变量、模块和组织操作。
简介
一种模型上下文协议服务器,通过自然语言管理Terrakube基础设施,处理工作区管理、变量、模块和组织操作。
Terrakube MCP 服务器
一个用于 Terrakube 操作的模型上下文协议 (MCP) 服务器,支持工作区管理、变量处理、模块操作和组织管理。
特性
- 全面的 API 集成:与 Terrakube 的 API 完全集成,实现无缝操作
- 类型安全:使用 TypeScript 构建,增强类型安全性和开发体验
- 错误处理:强大的错误处理机制,提供清晰的错误信息
- 环境配置:通过环境变量进行灵活配置
- 模块化设计:组织良好的代码结构,易于维护和扩展
工具
工作区
createWorkspace
在 Terrakube 中创建一个新的工作区。
- 输入:
name(string): 工作区名称organization(string): 组织名称description(可选 string): 工作区描述vcsProviderId(可选 string): VCS 提供商 IDvcsRepository(可选 string): VCS 仓库名称vcsBranch(可选 string): VCS 分支名称
- 返回:创建的工作区详情
updateWorkspace
更新现有的工作区。
- 输入:
name(string): 工作区名称organization(string): 组织名称description(可选 string): 新的工作区描述vcsProviderId(可选 string): 新的 VCS 提供商 IDvcsRepository(可选 string): 新的 VCS 仓库名称vcsBranch(可选 string): 新的 VCS 分支名称
- 返回:更新后的工作区详情
deleteWorkspace
删除一个工作区。
- 输入:
name(string): 工作区名称organization(string): 组织名称
- 返回:成功状态
getWorkspace
获取特定工作区的详细信息。
- 输入:
name(string): 工作区名称organization(string): 组织名称
- 返回:工作区详情
listWorkspaces
列出组织中的所有工作区。
- 输入:
organization(string): 组织名称
- 返回:工作区详情数组
变量
createVariable
在一个工作区中创建一个新的变量。
- 输入:
name(string): 变量名称organization(string): 组织名称workspace(string): 工作区名称value(string): 变量值description(可选 string): 变量描述category(可选 string): 变量类别hcl(可选 boolean): 变量是否为 HCLsensitive(可选 boolean): 变量是否敏感
- 返回:创建的变量详情
updateVariable
更新现有的变量。
- 输入:
name(字符串): 变量名称organization(字符串): 组织名称workspace(字符串): 工作区名称value(字符串): 新变量值description(可选字符串): 新变量描述category(可选字符串): 新变量类别hcl(可选布尔值): 变量是否为 HCLsensitive(可选布尔值): 变量是否敏感
- 返回: 更新后的变量详情
deleteVariable
删除一个变量。
- 输入:
name(字符串): 变量名称organization(字符串): 组织名称workspace(字符串): 工作区名称
- 返回: 成功状态
getVariable
获取特定变量的详细信息。
- 输入:
name(字符串): 变量名称organization(字符串): 组织名称workspace(字符串): 工作区名称
- 返回: 变量详情
listVariables
列出工作区中的所有变量。
- 输入:
organization(字符串): 组织名称workspace(字符串): 工作区名称
- 返回: 变量详情数组
模块
createModule
创建一个新的模块。
- 输入:
name(字符串): 模块名称organization(字符串): 组织名称provider(字符串): 模块提供者description(可选字符串): 模块描述
- 返回: 创建的模块详情
updateModule
更新现有模块。
- 输入:
name(字符串): 模块名称organization(字符串): 组织名称provider(字符串): 模块提供者description(可选字符串): 新模块描述
- 返回: 更新后的模块详情
deleteModule
删除一个模块。
- 输入:
name(字符串): 模块名称organization(字符串): 组织名称provider(字符串): 模块提供者
- 返回: 成功状态
getModule
获取特定模块的详细信息。
- 输入:
name(字符串): 模块名称organization(字符串): 组织名称provider(字符串): 模块提供者
- 返回: 模块详情
listModules
列出组织中的所有模块。
- 输入:
organization(字符串): 组织名称
- 返回: 模块详情数组
组织
createOrganization
创建一个新的组织。
- 输入:
name(字符串): 组织名称description(可选字符串): 组织描述
- 返回: 创建的组织详情
updateOrganization
更新现有组织。
- 输入:
name(字符串): 组织名称description(可选字符串): 新组织描述
- 返回: 更新后的组织详情
deleteOrganization
删除一个组织。
- 输入:
name(字符串): 组织名称
- 返回: 成功状态
getOrganization
获取特定组织的详细信息。
- 输入:
name(字符串): 组织名称
- 返回: 组织详情
listOrganizations
列出所有组织。
- 返回: 组织详情数组
设置
环境变量
在根目录下创建一个 .env 文件,并包含以下变量:
TERRAKUBE_API_URL=<your-terrakube-api-url> TERRAKUBE_PAT_TOKEN=<your-personal-access-token>
通过 Smithery 安装
要通过 Smithery 自动安装 Terrakube MCP Server for Claude Desktop,请执行:
npx -y @smithery/cli install @AzBuilder/mcp-server-terrakube --client claude
开发
-
克隆仓库:
git clone https://github.com/azbuilder/terrakube-mcp-server.git cd terrakube-mcp-server -
安装依赖项:
npm install -
构建项目:
npm run build
与 Claude Desktop 一起使用
要在 Claude Desktop 中使用此功能,请将以下内容添加到您的 claude_desktop_config.json 文件中:
{ "mcpServers": { "terrakube": { "command": "npx", "args": [ "-y", "@terrakube/mcp-server" ], "env": { "TERRAKUBE_API_URL": "<YOUR_API_URL>", "TERRAKUBE_PAT_TOKEN": "<YOUR_PAT_TOKEN>" } } } }
服务配置
[{'mcpServers': {'terrakube': {'args': ['-y', '@terrakube/mcp-server'], 'command': 'npx', 'env': {'TERRAKUBE_API_URL': '<YOUR_API_URL>', 'TERRAKUBE_PAT_TOKEN': '<YOUR_PAT_TOKEN>'}}}}]
来源
- 来源:github
- 链接:https://github.com/AzBuilder/mcp-server-terrakube