- Explore MCP Servers
- mcp-terraform-assistant
Mcp Terraform Assistant
What is Mcp Terraform Assistant
mcp-terraform-assistant is an MCP server designed for managing infrastructure as code using Terraform, enabling users to automate and streamline their infrastructure management processes.
Use cases
Use cases include setting up cloud resources like EC2 instances in AWS, managing multi-cloud environments, automating infrastructure deployment, and maintaining consistent infrastructure configurations across different environments.
How to use
To use mcp-terraform-assistant, you can either install it locally by cloning the repository and installing dependencies, or run it using Docker. After starting the server, you can interact with it using the MCP CLI commands to initialize, plan, apply, and manage your Terraform configurations.
Key features
Key features include initializing Terraform working directories, generating and showing execution plans, applying changes to infrastructure, destroying infrastructure, validating Terraform configurations, showing current state or saved plans, and managing Terraform workspaces.
Where to use
mcp-terraform-assistant can be used in various fields such as cloud infrastructure management, DevOps practices, and any environment where infrastructure as code is applied to automate and manage resources efficiently.
Clients Supporting MCP
The following are the main client software that supports the Model Context Protocol. Click the link to visit the official website for more information.
Overview
What is Mcp Terraform Assistant
mcp-terraform-assistant is an MCP server designed for managing infrastructure as code using Terraform, enabling users to automate and streamline their infrastructure management processes.
Use cases
Use cases include setting up cloud resources like EC2 instances in AWS, managing multi-cloud environments, automating infrastructure deployment, and maintaining consistent infrastructure configurations across different environments.
How to use
To use mcp-terraform-assistant, you can either install it locally by cloning the repository and installing dependencies, or run it using Docker. After starting the server, you can interact with it using the MCP CLI commands to initialize, plan, apply, and manage your Terraform configurations.
Key features
Key features include initializing Terraform working directories, generating and showing execution plans, applying changes to infrastructure, destroying infrastructure, validating Terraform configurations, showing current state or saved plans, and managing Terraform workspaces.
Where to use
mcp-terraform-assistant can be used in various fields such as cloud infrastructure management, DevOps practices, and any environment where infrastructure as code is applied to automate and manage resources efficiently.
Clients Supporting MCP
The following are the main client software that supports the Model Context Protocol. Click the link to visit the official website for more information.
Content
MCP Infrastructure as Code Assistant
An MCP server for managing infrastructure as code with Terraform.
Features
- Initialize Terraform working directories
- Generate and show execution plans
- Apply changes to infrastructure
- Destroy infrastructure
- Validate Terraform configurations
- Show current state or saved plans
- Manage Terraform workspaces
Prerequisites
- Python 3.8 or higher
- Terraform 1.5.7 or higher
- Docker and Docker Compose (optional)
Installation
Local Installation
-
Clone the repository:
git clone https://github.com/yourusername/mcp-iac.git cd mcp-iac -
Install dependencies using uv:
curl -LsSf https://astral.sh/uv/install.sh | sh uv pip install -e .
Docker Installation
-
Clone the repository:
git clone https://github.com/yourusername/mcp-iac.git cd mcp-iac -
Build and run the Docker container:
docker-compose up -d
Usage
Local Usage
-
Start the MCP server:
python main.py -
Use the MCP CLI to interact with the server:
mcp terraform_init --working-dir ./terraform mcp terraform_plan --working-dir ./terraform mcp terraform_apply --working-dir ./terraform --auto-approve
Docker Usage
-
Start the MCP server:
docker-compose up -d -
Use the MCP CLI to interact with the server:
mcp terraform_init --working-dir ./terraform mcp terraform_plan --working-dir ./terraform mcp terraform_apply --working-dir ./terraform --auto-approve
Example Terraform Configuration
The repository includes an example Terraform configuration that creates an EC2 instance in AWS:
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 } }
Contributing
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Available Tools
terraform_init: Initialize a Terraform working directoryterraform_plan: Generate and show an execution plan for Terraformterraform_apply: Apply the changes required to reach the desired stateterraform_destroy: Destroy the infrastructure managed by Terraformterraform_validate: Validate the syntax and internal consistency of Terraform filesterraform_show: Show the current state or a saved planterraform_workspace_list: List Terraform workspacesterraform_workspace_select: Select a Terraform workspace
Example Usage
Here’s an example of how to use the MCP server with an AI agent:
-
Start the MCP server:
python main.py -
Connect to the server using an MCP client:
mcp connect http://localhost:8000 -
The AI agent can now help you with Terraform operations. For example:
- Initialize a Terraform working directory
- Generate and review execution plans
- Apply changes to infrastructure
- Destroy infrastructure resources
- Validate Terraform configurations
Examples
Check out the examples directory for sample Terraform configurations that demonstrate how to use the MCP server:
examples/aws-s3: A simple AWS S3 bucket example
Dev Tools Supporting MCP
The following are the main code editors that support the Model Context Protocol. Click the link to visit the official website for more information.










