Back to MCP directory
publicPublicdnsLocal runtime

Terraform MCP Server

Binadox开发的Terraform MCP服务器,为Terraform配置提供自动验证、安全检查和成本估算功能,集成MCP协议与AI助手协同工作

article

README

🚀 Binadox Terraform MCP 服务器

Binadox Terraform MCP 服务器 是一款专为 Terraform 配置打造的 MCP 服务器,它能自动对配置进行验证、加固,并预估云成本。该服务器由 Binadox 开发,可与任何符合模型上下文协议(MCP)的客户端集成,例如 Claude Desktop 或其他支持 MCP 的 AI 助手。

🚀 快速开始

Binadox Terraform MCP 服务器 是一个 MCP(模型上下文协议)服务器,它能帮助大语言模型(LLM)安全地生成 Terraform 基础设施代码,并在部署前进行内置的成本估算和安全检查。

它在您的 AI 助手和 Terraform 之间架起了一座桥梁:当您的大语言模型需要生成或修改云基础设施代码时,该服务器会用结构化工具(验证、语法检查、安全分析、成本数据)来增强 AI 的响应,而不是仅仅依赖模型的猜测。这确保了您获得的 Terraform 配置从一开始就更加完整、安全且具有成本意识。

了解更多关于如何使用我们的工具管理由 Terraform 驱动的基础设施的信息,请访问:Binadox IaC 成本跟踪器

✨ 主要特性

  • 代码验证与补全:处理 Terraform 代码片段,并填充缺失部分(提供者、版本、变量),以形成可运行的配置。
  • 安全分析:检测生成代码中常见的配置错误和不安全的默认设置(开放端口、缺少加密等)。
  • 成本估算:使用实际定价数据计算提议资源的每月云成本明细。
  • 文件组织:将输出组织成逻辑清晰的 Terraform 文件/模块(例如,将资源分组到模块中,必要时添加 terraform.tfvars)。
  • 轻松集成:可与任何兼容 MCP 的客户端(已在 Claude Desktop 上测试)配合使用,无缝融入您的 AI 驱动工作流程。

📦 安装指南

要安装 binadox-terraform-mcp,请克隆仓库并使用 Go 构建二进制文件。然后,将可执行文件的路径添加到您的 Claude Desktop 配置文件 claude_desktop_config.json 的 mcpServers 部分,同时包含您的 Binadox API URL 和令牌。最后,重启 Claude Desktop 以应用更改并开始使用 Terraform MCP 服务器。

  1. 克隆并构建
git clone https://github.com/binadox/binadox-terraform-mcp
cd binadox-terraform-mcp
go build -o terraform-mcp-server *.go
  1. 配置您的 MCP 客户端(示例:Claude Desktop)
# 添加到 Claude Desktop 配置
# macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
# Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "terraform": {
      "command": "/path/to/terraform-mcp-server",
      "env": {
        "TERRAFORM_ANALYSIS_URL": "https://app.binadox.com/api/1/organizations/pricing/terraform/mcp",
        "TERRAFORM_ANALYSIS_TOKEN": "your-token"
      }
    }
  }
}
  1. 重启您的 MCP 客户端 以应用配置。

💻 使用示例

无需额外的 CLI 命令。安装并配置完成后,服务器将在后台运行,执行以下操作:

  • 通过 prepare_terraform 验证并补全 Terraform 代码。
  • 通过 analyze_terraform 分析配置错误。
  • 通过 calculate_cost 估算云成本。

所有输出文件将写入 /tmp/terraform/<时间戳>,并在需要时进行压缩。

基础用法

防止成本超支

用户:为简单的演示环境生成 Terraform 代码

成本分析:每月 1847 美元
- m5.2xlarge 实例
- 多可用区 RDS
- 3 个可用区中的 NAT 网关

检测安全配置错误

用户:创建一个带有安全组的 RDS 数据库

安全分析:
- 开放 0.0.0.0/0 访问
- 无静态加密
- 1 天备份保留期

补全不完整的配置

用户:添加资源 "aws_s3_bucket" "data" { bucket = "my-data" }

没有 MCP:失败 - 没有提供者块
有 MCP:添加提供者、变量和元数据 - 配置可运行

📚 详细文档

🔧 技术细节

兼容性与要求

| 组件 | 支持/测试版本 | | ---- | ---- | | Go | 1.22+ | | Terraform CLI | 1.6+ | | 云服务 | AWS(完整:成本 + 检查)、Azure 和 GCP(仅成本,检查功能在规划中) | | MCP 客户端 | Claude Desktop(已测试)、其他兼容 MCP 的客户端 |

先决条件

  • Go 工具链(如果从源代码构建)
  • 已安装 Terraform CLI 1.6+
  • 有效的 Binadox API 令牌
  • 可访问 Binadox 定价 API 的互联网连接
  • /tmp/terraform/... 具有写入权限

API 要求

成本分析需要 Binadox API 令牌。Binadox 提供跨 AWS、Azure 和 GCP 的实时云定价数据。您可以在 Binadox 获取令牌。

安全与隐私

服务器在本地运行,不访问云凭证。

  • 文件保存在 /tmp/terraform/ 下,不会发送到外部。
  • 仅使用您的 Binadox 令牌远程请求成本数据。
  • 不收集任何遥测或分析数据。

📄 许可证

本项目采用 Apache 2.0 许可证。

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client