Offers containerized deployment of the MCP server, allowing it to run in isolated environments with all dependencies included
Integrates with GitHub for source code management and package distribution through GitHub Container Registry (GHCR)
Provides access to AWS-IA GenAI modules for OpenSearch through the SearchSpecificAwsIaModules tool
Supports testing framework for validating MCP server functionality
Implements Semantic Versioning for release management with automated releases based on commit conventions
Provides access to AWS-IA GenAI modules for Streamlit through the SearchSpecificAwsIaModules tool
Provides tools for executing Terraform commands (init, plan, validate, apply, destroy) and searching AWS provider documentation to help with infrastructure as code management
AWS Terraform MCP Server
Docker containerized version of the AWS Labs Terraform MCP Server - a Model Context Protocol (MCP) server for Terraform on AWS best practices, infrastructure as code patterns, and security compliance with Checkov.
🚀 Quick Start
Using Docker (Recommended)
Using with MCP Clients
Windsurf IDE
Add to your Windsurf MCP settings:
Cursor IDE
Add to your Cursor MCP configuration:
Related MCP server: Columbia MCP Server
🛠️ Features
Tools Available
ExecuteTerraformCommand - Run Terraform commands (init, plan, validate, apply, destroy)
ExecuteTerragruntCommand - Run Terragrunt workflows with advanced features
SearchAwsProviderDocs - Search AWS provider documentation
SearchAwsccProviderDocs - Search AWSCC provider documentation
SearchSpecificAwsIaModules - Access AWS-IA GenAI modules (Bedrock, OpenSearch, SageMaker, Streamlit)
RunCheckovScan - Security and compliance scanning with Checkov
SearchUserProvidedModule - Analyze Terraform Registry modules
Resources Available
terraform_development_workflow - Security-focused development process guide
terraform_aws_provider_resources_listing - Comprehensive AWS provider resources catalog
terraform_awscc_provider_resources_listing - AWSCC provider resources catalog
terraform_aws_best_practices - AWS Terraform best practices guidance
🔧 Development
Building Locally
Testing
Local Docker Testing
Direct Server Testing (without Docker)
Unit Tests
Using UV (Alternative)
📋 Prerequisites
For local development:
uv - Python package manager
Python 3.10+
Terraform CLI (for workflow execution)
Checkov (for security scanning)
For Docker usage:
Docker or compatible container runtime
🔒 Security Considerations
Follow structured development workflow with integrated validation and security scanning
Review all Checkov warnings and fix security issues when possible
Use AWSCC provider for consistent API behavior and better security defaults
Conduct independent assessment before applying changes to production environments
🔄 Versioning
This project uses Semantic Versioning with automated releases based on Conventional Commits.
Available Tags
latest- Latest stable releasev1.2.3- Specific versionv1.2- Latest patch of minor versionv1- Latest minor of major version
See CONTRIBUTING.md for commit message guidelines.
📄 License
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
🙏 Acknowledgments
Original implementation by AWS Labs
Built on the Model Context Protocol
Uses FastMCP framework
📞 Support
For issues and questions:
Note: This is a containerized distribution of the AWS Labs Terraform MCP Server. All credit for the core functionality goes to the AWS Labs team.