Terrakube MCP Server

by AzBuilder
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Uses .ENV for flexible configuration through environment variables, allowing users to set Terrakube API URL, personal access token, and organization name.

  • Packaged as an npm module (@terrakube/mcp-server-terrakube) that can be installed and executed with npx.

  • Built with TypeScript for enhanced type safety and developer experience when interfacing with Terrakube's API.

Terrakube MCP 服务器

用于 Terrakube 操作的模型上下文协议 (MCP) 服务器,支持工作区管理、变量处理、模块操作和组织管理。

特征

  • 全面的 API 集成:与 Terrakube 的 API 完全集成,实现无缝操作
  • 类型安全:使用 TypeScript 构建,以增强类型安全性和开发人员体验
  • 错误处理:强大的错误处理功能,提供清晰的错误消息
  • 环境配置:通过环境变量灵活配置
  • 模块化设计:有组织的代码结构,易于维护和扩展

工具

工作区

createWorkspace

在 Terrakube 中创建一个新的工作区。

  • 输入
    • name (字符串):工作区的名称
    • organization (字符串):组织名称
    • description (可选字符串):工作区描述
    • vcsProviderId (可选字符串):VCS 提供程序 ID
    • vcsRepository (可选字符串):VCS 存储库名称
    • vcsBranch (可选字符串):VCS 分支名称
  • 返回:创建的工作区详细信息

updateWorkspace

更新现有工作区。

  • 输入
    • name (字符串):工作区的名称
    • organization (字符串):组织名称
    • description (可选字符串):新工作区描述
    • vcsProviderId (可选字符串):新的 VCS 提供程序 ID
    • vcsRepository (可选字符串):新的 VCS 存储库名称
    • vcsBranch (可选字符串):新的 VCS 分支名称
  • 返回:更新的工作区详细信息

deleteWorkspace

删除工作区。

  • 输入
    • name (字符串):工作区的名称
    • organization (字符串):组织名称
  • 返回:成功状态

getWorkspace

获取特定工作区的详细信息。

  • 输入
    • name (字符串):工作区的名称
    • organization (字符串):组织名称
  • 返回:工作区详细信息

listWorkspaces

列出组织中的所有工作区。

  • 输入
    • organization (字符串):组织名称
  • 返回:工作区详细信息数组

变量

createVariable

在工作区中创建一个新变量。

  • 输入
    • name (字符串):变量的名称
    • organization (字符串):组织名称
    • workspace (字符串):工作区名称
    • value (字符串):变量值
    • description (可选字符串):变量描述
    • category (可选字符串):变量类别
    • hcl (可选布尔值):变量是否为 HCL
    • sensitive (可选布尔值):变量是否敏感
  • 返回:创建的变量详细信息

updateVariable

更新现有变量。

  • 输入
    • name (字符串):变量的名称
    • organization (字符串):组织名称
    • workspace (字符串):工作区名称
    • value (字符串):新的变量值
    • description (可选字符串):新变量描述
    • category (可选字符串):新的变量类别
    • hcl (可选布尔值):变量是否为 HCL
    • sensitive (可选布尔值):变量是否敏感
  • 返回:更新后的变量详细信息

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自动为 Claude Desktop 安装 Terrakube MCP 服务器:

npx -y @smithery/cli install @AzBuilder/mcp-server-terrakube --client claude

发展

  1. 克隆存储库:
    git clone https://github.com/azbuilder/terrakube-mcp-server.git cd terrakube-mcp-server
  2. 安装依赖项:
    npm install
  3. 构建项目:
    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>" } } } }

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

模型上下文协议服务器,可通过自然语言管理 Terrakube 基础设施,处理工作区管理、变量、模块和组织操作。

  1. Features
    1. Tools
      1. Workspaces
      2. Variables
      3. Modules
      4. Organizations
    2. Setup
      1. Environment Variables
      2. Installing via Smithery
      3. Development
      4. Usage with Claude Desktop
    ID: lomk5z9d0a