mcpField
M
MCP Infrastructure as Code Assistant

MCP Infrastructure as Code Assistant

本地服务
github.com/guilhermeyoshida云与基础设施181 周前更新

关于 MCP Infrastructure as Code Assistant

MCP Infrastructure as Code Assistant 是用于 Terraform 基础设施管理的 MCP 服务,面向需要在工作流中操作和检查 Terraform 配置的团队。它涵盖初始化、计划、应用、验证、状态查看和工作区管理。

主要功能

  1. 01初始化 Terraform 工作目录
  2. 02生成并查看执行计划
  3. 03应用或销毁基础设施
  4. 04验证配置并查看状态
  5. 05管理 Terraform 工作区

适用场景

  1. 01初始化 Terraform 项目
  2. 02检查变更计划后应用配置
  3. 03验证配置并查看当前状态
  4. 04切换 Terraform 工作区

MCP 相关

该 MCP 服务向 MCP 客户端提供 Terraform 操作工具,包括初始化、计划、应用、验证和工作区管理。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MCP 基础设施即代码助手

用于通过 Terraform 管理基础设施即代码的 MCP 服务。

功能

  • 初始化 Terraform 工作目录
  • 生成并显示执行计划
  • 应用基础设施更改
  • 销毁基础设施
  • 验证 Terraform 配置
  • 显示当前状态或已保存的计划
  • 管理 Terraform 工作区

先决条件

  • Python 3.8 或更高版本
  • Terraform 1.5.7 或更高版本
  • Docker 和 Docker Compose(可选)

安装

本地安装
  1. 克隆仓库:

    git clone https://github.com/yourusername/mcp-iac.git
    cd mcp-iac
    
  2. 使用 uv 安装依赖:

    curl -LsSf https://astral.sh/uv/install.sh | sh
    uv pip install -e .
    
Docker 安装
  1. 克隆仓库:

    git clone https://github.com/yourusername/mcp-iac.git
    cd mcp-iac
    
  2. 构建并运行 Docker 容器:

    docker-compose up -d
    

用法

本地用法
  1. 启动 MCP 服务:

    python main.py
    
  2. 使用 MCP CLI 与服务交互:

    mcp terraform_init --working-dir ./terraform
    mcp terraform_plan --working-dir ./terraform
    mcp terraform_apply --working-dir ./terraform --auto-approve
    
Docker 用法
  1. 启动 MCP 服务:

    docker-compose up -d
    
  2. 使用 MCP CLI 与服务交互:

    mcp terraform_init --working-dir ./terraform
    mcp terraform_plan --working-dir ./terraform
    mcp terraform_apply --working-dir ./terraform --auto-approve
    

Terraform 配置示例

仓库中包含一个 Terraform 配置示例,用于在 AWS 中创建 EC2 实例:

terraform {
  required_providers {
    aws = {
      source  = "hashicorp/aws"
      version = "~> 5.0"
    }
  }
}

provider "aws" {
  region = var.region
}

resource "aws_instance" "example" {
  ami           = var.ami_id
  instance_type = var.instance_type

  tags = {
    Name = var.instance_name
  }
}

贡献

  1. Fork 仓库
  2. 创建功能分支
  3. 提交更改
  4. 推送到分支
  5. 创建 Pull Request

许可证

本项目采用 MIT 许可证,详情请参阅 LICENSE 文件。

可用工具

  • terraform_init:初始化 Terraform 工作目录
  • terraform_plan:生成并显示 Terraform 执行计划
  • terraform_apply:应用为达到期望状态所需的更改
  • terraform_destroy:销毁由 Terraform 管理的基础设施
  • terraform_validate:验证 Terraform 文件的语法和内部一致性
  • terraform_show:显示当前状态或已保存的计划
  • terraform_workspace_list:列出 Terraform 工作区
  • terraform_workspace_select:选择 Terraform 工作区

用法示例

以下示例展示了如何将 MCP 服务与 AI Agent 配合使用:

  1. 启动 MCP 服务:

    python main.py
    
  2. 使用 MCP 客户端连接到服务:

    mcp connect http://localhost:8000
    
  3. AI Agent 现在可以协助你执行 Terraform 操作。例如:

    • 初始化 Terraform 工作目录
    • 生成并审查执行计划
    • 应用基础设施更改
    • 销毁基础设施资源
    • 验证 Terraform 配置

示例

查看 examples 目录中的 Terraform 配置示例,了解如何使用 MCP 服务:

  • examples/aws-s3:一个简单的 AWS S3 存储桶示例

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。