Terraform MCP Server:让智能体写 IaC 前先查注册表
HashiCorp 官方出品:智能体写 IaC 前先查 Registry 里的 provider、模块和策略,接 HCP Terraform 后还能管理工作区。
项目与安装文档
查看项目https://github.com/hashicorp/terraform-mcp-server
让模型写 Terraform,最常见的问题是它记住的 provider 参数早就过时了,资源名对不上、属性已废弃,terraform plan 一跑就报错。Terraform MCP Server 让智能体在动笔前先去 Terraform Registry 查当前的 provider 文档、模块和策略;如果你用 HCP Terraform 或 Terraform Enterprise,还能读写工作区。它由 HashiCorp 官方维护,截至 2026-10-06 约 1500 star。
能做什么
- 查 Registry:搜索 provider、读取 provider 详情和资源文档、分析公开模块和策略,默认只开这组
registry工具。 - 私有注册表:
registry-private工具集读取组织内部的私有模块和 provider。 - HCP Terraform 与 TFE:
terraform工具集列出组织和项目,创建、更新、删除工作区,管理变量、标签和运行。 - 需要显式开启的操作:会改动基础设施状态的工具受
ENABLE_TF_OPERATIONS控制,默认关闭。 - 两种传输:本地 stdio,或 StreamableHTTP 集中部署,后者带速率限制、CORS 和组织白名单配置。
适合谁
- 让 Claude Code 或 Cursor 起草、升级 Terraform 配置,希望参数以最新文档为准的平台工程师。
- 用 HCP Terraform 管理多个工作区、想用自然语言查状态和触发运行的团队。
接入方式
需要 Docker。Claude Code 本地 stdio 一条命令:
claude mcp add terraform -s user -t stdio -- docker run -i --rm hashicorp/terraform-mcp-server
接 HCP Terraform 或 TFE 时,通过环境变量 TFE_TOKEN(和需要时的 TFE_ADDRESS)传入令牌,用 --toolsets=registry,terraform 打开工作区工具。
编辑点评
基础设施即代码这一块,官方服务器的优势很直接:数据来自 Registry 本身,智能体写出来的资源参数和当前版本一致。默认只开只读的 Registry 工具,工作区管理和执行类操作都要额外打开,这个默认值比较稳妥。需要注意 README 的几条提醒:根据查询内容,Terraform 数据会暴露给 MCP 客户端和模型,不要接不可信的客户端;生成的配置和建议要人工审查是否符合安全、成本和合规要求。接上 TFE_TOKEN 后智能体可以删除工作区,令牌权限请按需给。许可证为 MPL-2.0。