← 返回目录
T

Terraform MCP Server

官方
为 HCP Terraform 和 Terraform Enterprise 提供更准确的 Terraform 生成与工作流自动化。
分类
开发工具 第 50 / 438
Stars
★ 1.5k 非常热门
传输方式
stdio(本地进程) · Streamable HTTP
运行环境
Docker · Go
凭据
可选 API Key
许可证
MPL-2.0
最近提交
65FMRS · C

官方维护的 Terraform MCP 服务器,功能全面,支持双传输和多种客户端,但需要 HCP Terraform 或 Terraform Enterprise 凭证。安全性需注意,建议使用可信的 MCP 客户端。

最强项 · 文档质量 16/20 最弱项 · 可靠性 8/20

可靠性
8/20
安全与权限
14/20
维护活跃度
14/20
文档质量
16/20
安装易用性
13/20
查看各项评分依据
可靠性 8/20
清单文件格式规范、内部一致(版本 1.2.0、OCI 镜像、stdio 传输),README 声称支持双传输模式,正常路径看似可行。但按静态校准规则,README 与清单不能作为执行证据;本次审查未获得源码、CI 工作流或已提交测试,因此无法验证初始化握手是否通畅、声明工具是否与真实行为一致。扣分项:缺少可验证的执行证据;清单仅声明 stdio,而 README 宣称支持 streamable-http,存在声明一致性差距;58 个开放问题无法判断是否涉及关键路径缺陷。
安全与权限 14/20
正面信号:清单将 TFE_TOKEN 标记为 isSecret;ENABLE_TF_OPERATIONS 默认 false,涉及删除/执行等敏感操作需显式开启;README 记录了防重定向(客户端无法设置 TFE_ADDRESS)、拒绝查询参数携带令牌、集中部署必须使用 TLS、来源白名单/CORS、组织白名单,以及不得配合不受信任客户端使用的警告。未触碰任何红线:安装示例均为占位符,无真实令牌;无恶意/窃取/外传模式;维护者身份真实。扣分项:静态审查无法从源码验证上述安全机制实际生效;长期有效的用户 API 令牌与静态共享密钥(TF_MCP_SHARED_SECRET)仍属残余风险;权限最小化主要依赖文档承诺而非可审计代码。
维护活跃度 14/20
维护者 HashiCorp 真实且知名;采用 MPL-2.0 许可证,提供安全联系邮箱与漏洞管理政策链接;项目未归档;版本演进可见(0.2.3 → 0.3.0+ → 1.2.0),Docker 镜像有对应 tag;功能面持续扩充(双传输、OTel 指标、Instana、会话模式、IP 转发等)。扣分项:所提供材料中无提交历史、问题响应时效或依赖更新记录;58 个开放问题缺少解决情况背景,无法评估维护响应质量;star 数仅作为发现信号,不计分。
文档质量 16/20
文档分层且相当充分:环境变量表、CLI 标志、六个主流客户端(VS Code、Cursor、Claude Desktop/Amazon Q/Kiro、Claude Code、Gemini、Bob IDE)的安装配置示例、传输模式与会话模式说明、令牌透传、客户端 IP 转发的信任模型与明确限制、支持的请求头、curl 示例、安全注意事项、集中部署示例、企业代理/TLS 排查,以及开发 make 命令;速率限制、组织白名单等限制与风险均有披露。扣分项:工具参数与完整工具列表仅外链到 HashiCorp 开发者文档,未包含在所审材料中;README 中出现 IBM 法律声明,疑似模板复用残留;限流、白名单强制等行为声明缺少仓库内的可验证实现材料。
安装易用性 13/20
安装路径清晰且步骤极少:stdio 模式一条 docker run 命令即可;streamable-http 有一行式启动示例;为 VS Code、Cursor、Claude Desktop、Claude Code、Gemini、Bob IDE 提供了可直接粘贴的 JSON 配置,并有 go install 与本地 make docker-build 作为备选路径。扣分项:静态校准规定,缺乏 CI/测试执行证据时 setup 上限为 15,而本次未提供此类证据;Docker 为硬性前置条件;Gemini 等客户端需额外从 GitHub 安装扩展;令牌/地址为可选,不配置时功能完整性无法验证。

静态评测 · 未实际运行收录于 2026-08-07

查看 FMRS 评分方法 →

选型与风险

能访问什么执行命令或代码访问网络

适合谁

  • 使用 HCP Terraform 或 Terraform Enterprise 的团队
  • 需要在 IDE(如 VS Code、Cursor)中集成 Terraform 的开发人员
  • 希望自动化 IaC 工作流的 DevOps 工程师

不适合谁

  • 不适用于无需 HCP Terraform/Terraform Enterprise 的纯本地 Terraform 使用场景
  • 不适合需要复杂自定义指令或安全要求极高的环境(除非仔细审查输出)

所需权限

  • 需要 Terraform API token(TFE_TOKEN)以访问 HCP Terraform 或 Terraform Enterprise
  • 在 Docker 容器中运行,可能需要网络访问
  • 若启用 ENABLE_TF_OPERATIONS,可执行 Terraform 操作,需要额外授权

风险与副作用

  • 服务器可能向 MCP 客户端和 LLM 暴露 Terraform 数据,避免用于不受信任的客户端
  • 输出和推荐是动态生成的,需审查以符合安全策略和成本要求
  • 在 StreamableHTTP 模式下,TFE_ADDRESS 不能由客户端设置,防止重定向攻击
  • 共享密钥(TF_MCP_SHARED_SECRET)仅应在 TLS 下使用

安装接入

准备工作

运行环境:Docker · Go

TFE_TOKEN 可选密钥 HCP Terraform / Terraform Enterprise 的 API 令牌,用于认证请求,可在 TFE 用户设置中生成。
TF_MCP_SHARED_SECRET 可选密钥 以 X-Tf-Mcp-Secret 头标识托管部署来源的共享密钥,仅应在 TLS 下使用,由部署方自行设定。
其他可选配置项(30 个)
TFE_ADDRESS 可选 HCP Terraform 或 Terraform Enterprise 的 API 地址,默认 https://app.terraform.io,可在 TFE 管理界面找到。
TFE_SKIP_TLS_VERIFY 可选 设为 true 可跳过对 HCP Terraform / TFE 的 TLS 验证,仅用于测试。
LOG_LEVEL 可选 日志级别(trace/debug/info/warn/error/fatal/panic),默认 info。
LOG_FORMAT 可选 日志格式,text 或 ,默认 text。
TRANSPORT_MODE 可选 设为 streamable-http 启用 HTTP 传输,默认 stdio。
TRANSPORT_HOST 可选 HTTP 服务器绑定主机,默认 127.0.0.1;容器内需设为 0.0.0.0。
TRANSPORT_PORT 可选 HTTP 服务器端口,默认 8080。
MCP_ENDPOINT 可选 HTTP 端点路径,默认 /mcp。
MCP_REDIRECT_ROOT_URL 可选 将 / 请求重定向到的 URL。
MCP_KEEP_ALIVE 可选 SSE 连接的 keep-alive 间隔,如 30s、1m,0 为禁用。
MCP_SESSION_MODE 可选 会话模式,stateful 或 stateless,默认 stateful。
MCP_ALLOWED_ORIGINS 可选 CORS 允许的来源列表,逗号分隔。
MCP_CORS_MODE 可选 CORS 模式:strict、development 或 disabled,默认 strict。
MCP_TLS_CERT_FILE 可选 非 localhost 部署所需的 TLS 证书文件路径。
MCP_TLS_KEY_FILE 可选 非 localhost 部署所需的 TLS 私钥文件路径。
MCP_RATE_LIMIT_GLOBAL 可选 全局速率限制,格式 rps:burst,默认 10:20。
MCP_RATE_LIMIT_SESSION 可选 每会话速率限制,格式 rps:burst,默认 5:10。
MCP_ORGANIZATION_ALLOWLIST 可选 允许访问 HTTP 服务器的 HCP Terraform 组织名 CSV 列表。
MCP_FORWARD_CLIENT_IP 可选 设为 true 时通过 X-Forwarded-For 向 TFE 转发客户端 IP。
MCP_REMOTE_IP_METHOD 可选 客户端 IP 获取方式:RemoteAddr、X-Real-IP 或 X-Forwarded-For。
MCP_XFF_TRUSTED_HOPS 可选 从右侧计数受信任代理跳数,仅在 X-Forwarded-For 方式下使用。
ENABLE_TF_OPERATIONS 可选 设为 true 启用需明确批准的 Terraform 执行类工具。
OTEL_METRICS_ENABLED 可选 设为 true 启用 OTel 工具与服务器指标。
OTEL_METRICS_SERVICE_VERSION 可选 发送指标的版本标识,默认 latest。
OTEL_METRICS_SERVICE_NAME 可选 指标来源标识,默认 terraform-mcp-server。
OTEL_METRICS_EXPORT_INTERVAL 可选 指标刷新频率,默认 2。
OTEL_METRICS_ENDPOINT 可选 OTel Collector 或后端地址,默认 localhost:4318。
INSTANA_ENABLED 可选 启用 Instana 监控(指标与 HTTP 追踪),需可达的 Instana agent。
INSTANA_SERVICE_NAME 可选 Instana 中的服务名,默认 terraform-mcp-server。
SSL_CERT_FILE 可选 指向企业 CA 证书的路径,用于解决 Zscaler 等 TLS 检查导致的证书错误。

可通过 Docker 运行:docker run -i --rm hashicorp/terraform-mcp-server:1.2.0。可通过环境变量 TFE_ADDRESS 和 TFE_TOKEN 配置。也可以从源码构建(go install github.com/hashicorp/terraform-mcp-server/cmd/terraform-mcp-server@latest)。

验证是否装好

运行 docker run -i --rm hashicorp/terraform-mcp-server:1.2.0 后,在客户端工具列表中应出现 Terraform MCP 服务器的工具(如 provider 搜索类工具);也可在 streamable-http 模式下用 curl 访问 http://localhost:8080/health 确认服务健康。

常见排障

  1. 如果遇到证书错误(如公司代理),可挂载企业 CA 证书并设置 SSL_CERT_FILE
  2. 确认 TFE_ADDRESS 和 TFE_TOKEN 环境变量正确设置
  3. 在 Docker 中运行时,确保 TRANSPORT_HOST=0.0.0.0 以允许外部连接
  4. 检查日志级别(LOG_LEVEL)以获取更多诊断信息

试试这样问

连接成功后,可以直接对 AI 助手这样说:

  • 搜索 Terraform Registry 中用于 AWS 的 provider 并列出其文档
  • 查找在 Terraform Registry 上可用的官方 VPC 模块
  • 列出我在 HCP Terraform 中的工作区(workspaces)
  • 给我这个 Terraform provider 的最新版本和使用详情

使用场景

生成更准确的 Terraform 配置
管理 HCP Terraform 或 Terraform Enterprise 的 workspaces、变量、标签和 runs
查询 Terraform Registry 中的 providers、modules 和 policies
在 StreamableHTTP 模式下实现集中式部署,支持多用户 token 透传

详细介绍

Terraform MCP 服务器是官方提供的 MCP 集成,能够与 Terraform Registry API 无缝交互,支持 HCP Terraform 和 Terraform Enterprise,实现基础设施即代码(IaC)开发的高级自动化和交互能力。它支持 Stdio 和 StreamableHTTP 双传输,提供完整的 workspace 管理、组织/项目列表、私有 registry 访问,以及可选的 Terraform 执行工具。

同类可选方案

Context7 80 · B

Upstash 官方维护,为 AI 编码助手提供实时更新的第三方库文档

★ 62.9k · 工具数 2 与当前对比 →

源版本 66e223d8ba74 数据同步于 2026-10-12 查看 FMRS 评分方法