Token导航 LogoToken导航

MCP Server · 运维云端

Terry-Form MCP

Terry-Form MCP是一个容器化的Terraform执行服务,通过Model Context Protocol为AI助手提供安全、结构化的Terraform访问能力。

stdio官方级别未说明来源级核验工具 25
基础设施即代码PythonClaude开发工具

快速开始

作者 / 组织
aj-geddes
提供方
aj-geddes
运行时
Docker

工具数量

25

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

9

仓库热度

收录来源

2 个

MCP World

选型结论

Terry-Form MCP 属于运维云端类 MCP Server,公开资料标注 25 个工具,通过stdio 本地进程接入,适配 Claude,有可以直接复制的安装命令;接入前要先准备 OAuth 授权。

分类

运维云端

传输方式

stdio

认证方式

OAuth 授权

部署方式

仅本地运行

安装与配置

安装命令

docker run -it --rm \

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Docker,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 25 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

Terry Form MCP

通过模型上下文协议实现人工智能驱动的地形执行。

Terry Form MCP是一个集装箱 模型上下文协议 服务器,为克劳德等人工智能助手提供对Terraform的安全、结构化访问。它公开了25个MCP工具,涵盖了Terraform执行、LSP智能、GitHub集成和Terraform Cloud连接——所有这些工具都在Docker中运行,设计阻止了破坏性操作。

文档网站

______________________________________________________________________

仪表盘

内置的web仪表板提供实时服务器运行状况监控、工具类别概述和集成状态一目了然。实时状态每5秒自动刷新一次。

配置UI

选项卡式配置界面允许您管理服务器设置、集成、云提供商凭据和速率限制,所有这些都不需要接触配置文件。使用HAT堆栈(HTMX+Alpine.js+Tailwind CSS)构建。

GitHub集成云提供商费率限制

工具目录

交互式工具目录位于 /tools 列出了所有25个MCP工具,包括搜索、类别过滤和可扩展参数详细信息。也可作为原始JSON端点在 /api/tools 作为一种静态 tools.json 文件。

______________________________________________________________________

快速开始

先决条件

  • Docker已安装并正在运行
  • Python>=3.10(用于本地开发)

1.建造

scripts/build.sh      # Linux/macOS
scripts\build.bat     # Windows
# or directly:
docker build -t terry-form-mcp .

2.作为MCP服务器运行

docker run -it --rm \
  -v "$(pwd)":/mnt/workspace \
  terry-form-mcp

3.验证图像

scripts/verify.sh   # Runs 8 checks: Docker, image size, Terraform, terraform-ls, Python, files, tools, startup

______________________________________________________________________

环境变量

所有配置都是通过环境变量进行的。基本使用不需要配置文件。

服务器配置

变量描述默认值必填
MCP_TRANSPORT传输协议: stdio, sse,或 streamable-httpstdio没有
TERRY_HOST服务器绑定地址(回退: HOST)0.0.0.0没有
TERRY_PORT服务器端口(回退: PORT)8000没有
TERRY_FORM_API_KEY用于前端身份验证的API密钥;如果未设置,则禁用身份验证无否
TERRY_CSRF_SECRETCSRF令牌秘密;如果未设置,则在重新启动时重新生成随机推荐
TERRY_WORKSPACE_ROOTTerraform工作区根目录/mnt/workspace没有
TERRY_CONFIG_PATH配置文件路径/app/config/terry-config.json没有

地形

变量描述默认值必填
MAX_OPERATION_TIMEOUT地形命令超时(秒)(10–3600)300没有

语言服务器协议

变量描述默认值必填
TERRY_TERRAFORM_LS_PATH通往 terraform-ls 二进制terraform-ls没有
TERRY_LSP_TIMEOUTLSP请求超时(秒)30没有
TERRY_LSP_MAX_RESPONSE_BYTES最大LSP响应大小(字节)10485760没有

GitHub集成

变量描述默认值必填
GITHUB_APP_IDGitHub应用程序ID无适用于GitHub功能
GITHUB_APP_PRIVATE_KEY_PATHGitHub应用程序私钥文件的路径无GitHub功能
GITHUB_APP_PRIVATE_KEYGitHub应用程序私钥(内联PEM)无Alt到路径
GITHUB_APP_INSTALLATION_IDGitHub应用程序安装ID无否
GITHUB_APP_WEBHOOK_SECRETWebhook签名验证密钥无否

地形云

变量描述默认值必填
TF_API_TOKENTerraform Cloud API令牌无用于TF Cloud功能

速率限制

变量描述默认值必填
TERRY_RATE_LIMIT_TERRAFORM每分钟地形操作数20没有
TERRY_RATE_LIMIT_GITHUBGitHub每分钟操作数30没有
TERRY_RATE_LIMIT_TF_CLOUD地形云每分钟运行次数30没有
TERRY_RATE_LIMIT_DEFAULT默认每分钟速率限制100没有

云提供商通道

这些变量直接转发到Terraform子流程。将它们设置为与您的云提供商进行身份验证。

AWS: AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN, AWS_DEFAULT_REGION, AWS_REGION, AWS_PROFILE

GCP: GOOGLE_CREDENTIALS, GOOGLE_APPLICATION_CREDENTIALS, GOOGLE_PROJECT, GOOGLE_REGION, GOOGLE_ZONE

Azure: ARM_CLIENT_ID, ARM_CLIENT_SECRET, ARM_SUBSCRIPTION_ID, ARM_TENANT_ID

______________________________________________________________________

MCP客户端配置

将Terry Form添加到任何兼容MCP的客户端:

{
  "mcpServers": {
    "terry": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "-v", "/path/to/your/workspace:/mnt/workspace",
        "terry-form-mcp"
      ]
    }
  }
}

Platform-specific examples

克劳德桌面(Windows)

{
  "mcpServers": {
    "terry": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "-v", "C:\\Users\\YourUsername\\terraform-projects:/mnt/workspace",
        "terry-form-mcp"
      ]
    }
  }
}

克劳德桌面(macOS)

{
  "mcpServers": {
    "terry": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "-v", "/Users/YourUsername/terraform-projects:/mnt/workspace",
        "terry-form-mcp"
      ]
    }
  }
}

VSCode(使用工作空间变量)

{
  "mcp.servers": {
    "terry": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "-v", "${workspaceFolder}:/mnt/workspace",
        "terry-form-mcp"
      ]
    }
  }
}

______________________________________________________________________

工具(25)

类别工具计数
核心地形terry, terry_version, terry_environment_check, terry_workspace_list4
LSP情报terraform_validate_lsp, terraform_hover, terraform_complete, terraform_format_lsp, terraform_lsp_status5
诊断terry_lsp_debug, terry_workspace_info, terry_lsp_init, terry_file_check, terry_workspace_setup, terry_analyze6
安全terry_security_scan, terry_recommendations2
GitHubgithub_clone_repo, github_list_terraform_files, github_get_terraform_config, github_prepare_workspace4
地形云tf_cloud_list_workspaces, tf_cloud_get_workspace, tf_cloud_list_runs, tf_cloud_get_state_outputs4

核心地形

# Initialize and validate a project
terry(path="infrastructure/aws", actions=["init", "validate"])

# Plan with variables
terry(path="environments/prod", actions=["plan"], vars={"instance_count": "3", "region": "us-east-1"})

仅 init, validate, fmt,以及 plan 是允许的。 apply 和 destroy 被封锁。

LSP情报

# Code completions
terraform_complete(file_path="main.tf", line=10, character=0)

# Hover documentation
terraform_hover(file_path="main.tf", line=15, character=12)

# Detailed validation with error locations
terraform_validate_lsp(file_path="main.tf")

# Format a file
terraform_format_lsp(file_path="main.tf")

由...驱动 terraform-ls v0.38.5--提供上下文感知的补全、内联文档和具有精确源位置的诊断。

GitHub集成

# Clone a repo and prepare it for Terraform operations
github_clone_repo(owner="myorg", repo="infrastructure")
github_prepare_workspace(owner="myorg", repo="infrastructure", config_path="environments/prod")

安全扫描

# Scan for hardcoded credentials, missing encryption, overly permissive policies
terry_security_scan(path="my-project")

# Get actionable improvement recommendations
terry_recommendations(path="my-project")

______________________________________________________________________

建筑

┌─────────────┐     MCP Protocol     ┌──────────────────────────────────────┐
│ AI Assistant │ ◄──────────────────► │  Terry-Form MCP Server               │
│ (Claude)     │                      │                                      │
└─────────────┘                      │  ┌─────────────┐  ┌──────────────┐  │
                                     │  │ Terraform    │  │ terraform-ls │  │
                                     │  │ CLI 1.12     │  │ LSP 0.38.5   │  │
                                     │  └──────┬───────┘  └──────┬───────┘  │
                                     │         │                 │          │
                                     │         ▼                 ▼          │
                                     │  ┌──────────────────────────────┐   │
                                     │  │   /mnt/workspace (isolated)   │   │
                                     │  └──────────────────────────────┘   │
                                     └──────────────────────────────────────┘
                                              Docker Container

关键组件

文件目的
src/server_enhanced_with_lsp.py主FastMCP服务器——注册所有25个工具
src/terry-form-mcp.py核心Terraform子流程执行
src/terraform_lsp_client.py异步LSP客户端包装 terraform-ls
src/mcp_request_validator.py输入净化、路径遍历预防、速率限制
src/github_repo_handler.py克隆存储库并提取Terraform文件
src/github_app_auth.pyGitHub应用程序JWT/OAuth身份验证
src/frontend/HAT堆栈web UI(仪表板+配置)

前端堆栈

内置的web UI使用 HAT堆栈:

  • HTMX 2.0——不完全重新加载的部分页面更新
  • A.lpine.js 3.14——标签和吐司的轻量级客户端反应
  • Tailwind CSS——暗模式优先实用样式

与一起运行时,可在服务器根目录访问 streamable-http 或 sse 运输。

______________________________________________________________________

安全模型

Terry Form采用四层深度防御:

层保护
集装箱隔离所有执行都在临时Docker容器中。没有主机访问权限。
操作许可清单只有 init, validate, fmt, plan不 apply/destroy.
工作区隔离所有文件操作仅限于 /mnt/workspace。路径遍历被阻止。
输入验证JSON模式强制、变量净化、每个类别的速率限制。

强制环境变量: TF_IN_AUTOMATION=true, TF_INPUT=false, CHECKPOINT_DISABLE=true.

______________________________________________________________________

使用Web UI运行

要使用仪表板和配置UI,请使用HTTP传输运行:

# Local
MCP_TRANSPORT=streamable-http HOST=0.0.0.0 PORT=8000 python3 src/server_enhanced_with_lsp.py

# Docker
docker run -it --rm \
  -p 8000:8000 \
  -v "$(pwd)":/mnt/workspace \
  -e MCP_TRANSPORT=streamable-http \
  terry-form-mcp

然后打开 http://localhost:8000 在您的浏览器中。

配置选项卡

选项卡它配置了什么
服务器传输模式、主机、端口、API密钥
GitHub应用ID、安装ID、私钥路径、webhook密钥
地形云API令牌
云提供商AWS、GCP和Azure凭据
速率限制每类请求限制(立即适用)
地形选项日志级别,操作超时

______________________________________________________________________

集装箱详情

建立在 hashicorp/terraform:1.12 (基于阿尔卑斯山,~150MB)。包括:

  • Terraform CLI 1.12
  • terraform-ls v0.38.5用于LSP支持
  • Python 3.12与FastMCP 3.0+
  • 以非root用户身份运行 terraform (UID 1001)

______________________________________________________________________

发展

# Install dependencies
pip install -r requirements.txt

# Run locally
python3 src/server_enhanced_with_lsp.py

# Code quality
black .       # Format (88-char line limit)
flake8 .      # Lint
mypy src/*.py # Type check

______________________________________________________________________

局限性

  • 无状态修改 — apply 和 destroy 被故意封锁
  • 仅字符串变量 --CLI直通不支持复杂变量类型
  • LSP冷启动 --第一次LSP操作需要1-2秒进行初始化
  • 本地执行 --专为开发工作流程而非生产CI/CD而设计

______________________________________________________________________

许可证

麻省理工学院

工具与能力

工具数量

25

资源数量

0

提示词数量

0

能力标签

Terraform执行Python本地部署AI集成容器化服务基础设施即代码开发工具

支持客户端

Claude

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

看服务状态

查询容器、日志和监控指标,定位异常。

执行部署变更

在权限范围内触发发布、回滚和环境切换。

核对资源用量

汇总用量,找出闲置和超额的部分。

选择建议

值得选的地方

  • 工具数量 25 个,一次接入能覆盖的操作比单点工具更全。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 Docker,换机器要重新装一遍。
  • 需要自备OAuth 授权,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在运维云端场景里让模型直接调用外部能力的人。
  • 已经在用 Claude 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到OAuth 授权的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Terry-Form MCP

MCP World · 本页

25stdio有2 个2026-05-17
Ui Tars Desktop 8a825770

MCP World

0stdio有1 个2026-05-17
Elie222 MCP

MCP World

0未说明未标注1 个2026-05-17
Arizeai Phoenix MCP

MCP World

0stdio有3 个2026-05-17
Unity MCP 87ee506e

MCP World

42HTTP有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Terry-Form MCP 怎么安装?

公开资料给出的安装命令是 docker run -it --rm \,运行环境为 Docker。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Terry-Form MCP 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Docker;保存后完全退出客户端再打开,配置才会生效。

Terry-Form MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Terry-Form MCP 需要 API Key 吗?

公开资料标注的认证方式是OAuth 授权,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

Terry-Form MCP 支持哪些客户端?

公开资料标注支持 Claude;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP