awslabs.terraform-mcp-server 1.0.3__tar.gz → 1.0.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of awslabs.terraform-mcp-server might be problematic. Click here for more details.

Files changed (52) hide show
  1. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/Dockerfile +21 -10
  2. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/PKG-INFO +2 -2
  3. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/README.md +1 -1
  4. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/__init__.py +1 -1
  5. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/pyproject.toml +1 -1
  6. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/.gitignore +0 -0
  7. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/.python-version +0 -0
  8. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/CHANGELOG.md +0 -0
  9. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/__init__.py +0 -0
  10. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/impl/resources/__init__.py +0 -0
  11. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/impl/resources/terraform_aws_provider_resources_listing.py +0 -0
  12. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/impl/resources/terraform_awscc_provider_resources_listing.py +0 -0
  13. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/impl/tools/__init__.py +0 -0
  14. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/impl/tools/execute_terraform_command.py +0 -0
  15. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/impl/tools/execute_terragrunt_command.py +0 -0
  16. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/impl/tools/run_checkov_scan.py +0 -0
  17. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/impl/tools/search_aws_provider_docs.py +0 -0
  18. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/impl/tools/search_awscc_provider_docs.py +0 -0
  19. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/impl/tools/search_specific_aws_ia_modules.py +0 -0
  20. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/impl/tools/search_user_provided_module.py +0 -0
  21. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/impl/tools/utils.py +0 -0
  22. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/models/__init__.py +0 -0
  23. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/models/models.py +0 -0
  24. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/scripts/generate_aws_provider_resources.py +0 -0
  25. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/scripts/generate_awscc_provider_resources.py +0 -0
  26. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/scripts/scrape_aws_terraform_best_practices.py +0 -0
  27. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/server.py +0 -0
  28. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/static/AWSCC_PROVIDER_RESOURCES.md +0 -0
  29. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/static/AWS_PROVIDER_RESOURCES.md +0 -0
  30. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/static/AWS_TERRAFORM_BEST_PRACTICES.md +0 -0
  31. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/static/MCP_INSTRUCTIONS.md +0 -0
  32. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/static/TERRAFORM_WORKFLOW_GUIDE.md +0 -0
  33. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/awslabs/terraform_mcp_server/static/__init__.py +0 -0
  34. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/docker-healthcheck.sh +0 -0
  35. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/tests/.gitignore +0 -0
  36. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/tests/README.md +0 -0
  37. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/tests/__init__.py +0 -0
  38. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/tests/conftest.py +0 -0
  39. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/tests/test_command_impl.py +0 -0
  40. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/tests/test_execute_terraform_command.py +0 -0
  41. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/tests/test_execute_terragrunt_command.py +0 -0
  42. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/tests/test_models.py +0 -0
  43. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/tests/test_parameter_annotations.py +0 -0
  44. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/tests/test_resources.py +0 -0
  45. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/tests/test_run_checkov_scan.py +0 -0
  46. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/tests/test_search_user_provided_module.py +0 -0
  47. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/tests/test_server.py +0 -0
  48. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/tests/test_tool_implementations.py +0 -0
  49. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/tests/test_utils.py +0 -0
  50. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/tests/test_utils_additional.py +0 -0
  51. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/uv-requirements.txt +0 -0
  52. {awslabs_terraform_mcp_server-1.0.3 → awslabs_terraform_mcp_server-1.0.4}/uv.lock +0 -0
@@ -13,7 +13,7 @@
13
13
  # limitations under the License.
14
14
 
15
15
  # dependabot should continue to update this to the latest hash.
16
- FROM public.ecr.aws/sam/build-python3.13@sha256:0c274ddd44e1d80e4dab3a70c25fe29508f612a045cba7d27840461c12eee86d AS uv
16
+ FROM public.ecr.aws/docker/library/python:3.13-slim-bookworm@sha256:6544e0e002b40ae0f59bc3618b07c1e48064c4faed3a15ae2fbd2e8f663e8283 AS uv
17
17
 
18
18
  # Install the project into `/app`
19
19
  WORKDIR /app
@@ -42,28 +42,39 @@ RUN --mount=type=cache,target=/root/.cache/uv \
42
42
  pip install --require-hashes --requirement uv-requirements.txt --no-cache-dir && \
43
43
  uv sync --python 3.13 --frozen --no-install-project --no-dev --no-editable
44
44
 
45
- # Then, add the rest of the project source code and install it
45
+ # Then, add the rest of the project source code and install it
46
46
  # Installing separately from its dependencies allows optimal layer caching
47
47
  COPY . /app
48
48
  RUN --mount=type=cache,target=/root/.cache/uv \
49
49
  uv sync --python 3.13 --frozen --no-dev --no-editable
50
50
 
51
51
  # Make the directory just in case it doesn't exist
52
- RUN mkdir -p /root/.local
53
-
54
- FROM public.ecr.aws/sam/build-python3.13@sha256:0c274ddd44e1d80e4dab3a70c25fe29508f612a045cba7d27840461c12eee86d
52
+ # RUN mkdir -p /root/.local
55
53
 
54
+ FROM public.ecr.aws/docker/library/python:3.13-slim-bookworm@sha256:6544e0e002b40ae0f59bc3618b07c1e48064c4faed3a15ae2fbd2e8f663e8283
55
+ ARG TERRAFORM_VERSION="1.12.2"
56
56
  # Place executables in the environment at the front of the path and include other binaries
57
- ENV PATH="/app/.venv/bin:$PATH:/usr/sbin" \
58
- PYTHONUNBUFFERED=1
57
+ ENV PATH="/app/.venv/bin:$PATH:/usr/sbin"
58
+
59
+ RUN echo $TERRAFORM_VERSION
59
60
 
61
+ # Install lsof for the healthcheck
62
+ # Install other tools as needed for the MCP server
60
63
  # Add non-root user and ability to change directory into /root
61
- RUN groupadd --force --system app && \
64
+ RUN out=$(mktemp) && \
65
+ apt-get update -y && \
66
+ apt-get install -y wget unzip procps && \
67
+ (wget -nv -O$out wget "https://releases.hashicorp.com/terraform/${TERRAFORM_VERSION}/terraform_${TERRAFORM_VERSION}_linux_$(dpkg --print-architecture).zip" || echo "Getting Network Error 4 ? $?" ) && \
68
+ unzip "$out" -d /usr/local/bin/ && \
69
+ chmod +x /usr/local/bin/terraform && \
70
+ apt-get clean -y && \
71
+ apt-get autoremove -y && \
72
+ groupadd --force --system app && \
62
73
  useradd app -g app -d /app && \
63
74
  chmod o+x /root
64
75
 
65
- # Copy application artifacts from build stage
66
- COPY --from=uv --chown=app:app /root/.local /root/.local
76
+ # Get the project from the uv layer
77
+ # COPY --from=uv --chown=app:app /root/.local /root/.local
67
78
  COPY --from=uv --chown=app:app /app/.venv /app/.venv
68
79
 
69
80
  # Get healthcheck script
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: awslabs.terraform-mcp-server
3
- Version: 1.0.3
3
+ Version: 1.0.4
4
4
  Summary: An AWS Labs Model Context Protocol (MCP) server for terraform
5
5
  Requires-Python: >=3.10
6
6
  Requires-Dist: beautifulsoup4>=4.12.0
@@ -80,7 +80,7 @@ MCP server for Terraform on AWS best practices, infrastructure as code patterns,
80
80
 
81
81
  | Cursor | VS Code |
82
82
  |:------:|:-------:|
83
- | [![Install MCP Server](https://cursor.com/deeplink/mcp-install-light.svg)](https://cursor.com/install-mcp?name=awslabs.terraform-mcp-server&config=eyJjb21tYW5kIjoidXZ4IGF3c2xhYnMudGVycmFmb3JtLW1jcC1zZXJ2ZXJAbGF0ZXN0IiwiZW52Ijp7IkZBU1RNQ1BfTE9HX0xFVkVMIjoiRVJST1IifSwiZGlzYWJsZWQiOmZhbHNlLCJhdXRvQXBwcm92ZSI6W119) | [![Install on VS Code](https://img.shields.io/badge/Install_on-VS_Code-FF9900?style=flat-square&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect/mcp/install?name=Terraform%20MCP%20Server&config=%7B%22command%22%3A%22uvx%22%2C%22args%22%3A%5B%22awslabs.terraform-mcp-server%40latest%22%5D%2C%22env%22%3A%7B%22FASTMCP_LOG_LEVEL%22%3A%22ERROR%22%7D%2C%22disabled%22%3Afalse%2C%22autoApprove%22%3A%5B%5D%7D) |
83
+ | [![Install MCP Server](https://cursor.com/deeplink/mcp-install-light.svg)](https://cursor.com/en/install-mcp?name=awslabs.terraform-mcp-server&config=eyJjb21tYW5kIjoidXZ4IGF3c2xhYnMudGVycmFmb3JtLW1jcC1zZXJ2ZXJAbGF0ZXN0IiwiZW52Ijp7IkZBU1RNQ1BfTE9HX0xFVkVMIjoiRVJST1IifSwiZGlzYWJsZWQiOmZhbHNlLCJhdXRvQXBwcm92ZSI6W119) | [![Install on VS Code](https://img.shields.io/badge/Install_on-VS_Code-FF9900?style=flat-square&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect/mcp/install?name=Terraform%20MCP%20Server&config=%7B%22command%22%3A%22uvx%22%2C%22args%22%3A%5B%22awslabs.terraform-mcp-server%40latest%22%5D%2C%22env%22%3A%7B%22FASTMCP_LOG_LEVEL%22%3A%22ERROR%22%7D%2C%22disabled%22%3Afalse%2C%22autoApprove%22%3A%5B%5D%7D) |
84
84
 
85
85
  Configure the MCP server in your MCP client configuration (e.g., for Amazon Q Developer CLI, edit `~/.aws/amazonq/mcp.json`):
86
86
 
@@ -65,7 +65,7 @@ MCP server for Terraform on AWS best practices, infrastructure as code patterns,
65
65
 
66
66
  | Cursor | VS Code |
67
67
  |:------:|:-------:|
68
- | [![Install MCP Server](https://cursor.com/deeplink/mcp-install-light.svg)](https://cursor.com/install-mcp?name=awslabs.terraform-mcp-server&config=eyJjb21tYW5kIjoidXZ4IGF3c2xhYnMudGVycmFmb3JtLW1jcC1zZXJ2ZXJAbGF0ZXN0IiwiZW52Ijp7IkZBU1RNQ1BfTE9HX0xFVkVMIjoiRVJST1IifSwiZGlzYWJsZWQiOmZhbHNlLCJhdXRvQXBwcm92ZSI6W119) | [![Install on VS Code](https://img.shields.io/badge/Install_on-VS_Code-FF9900?style=flat-square&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect/mcp/install?name=Terraform%20MCP%20Server&config=%7B%22command%22%3A%22uvx%22%2C%22args%22%3A%5B%22awslabs.terraform-mcp-server%40latest%22%5D%2C%22env%22%3A%7B%22FASTMCP_LOG_LEVEL%22%3A%22ERROR%22%7D%2C%22disabled%22%3Afalse%2C%22autoApprove%22%3A%5B%5D%7D) |
68
+ | [![Install MCP Server](https://cursor.com/deeplink/mcp-install-light.svg)](https://cursor.com/en/install-mcp?name=awslabs.terraform-mcp-server&config=eyJjb21tYW5kIjoidXZ4IGF3c2xhYnMudGVycmFmb3JtLW1jcC1zZXJ2ZXJAbGF0ZXN0IiwiZW52Ijp7IkZBU1RNQ1BfTE9HX0xFVkVMIjoiRVJST1IifSwiZGlzYWJsZWQiOmZhbHNlLCJhdXRvQXBwcm92ZSI6W119) | [![Install on VS Code](https://img.shields.io/badge/Install_on-VS_Code-FF9900?style=flat-square&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect/mcp/install?name=Terraform%20MCP%20Server&config=%7B%22command%22%3A%22uvx%22%2C%22args%22%3A%5B%22awslabs.terraform-mcp-server%40latest%22%5D%2C%22env%22%3A%7B%22FASTMCP_LOG_LEVEL%22%3A%22ERROR%22%7D%2C%22disabled%22%3Afalse%2C%22autoApprove%22%3A%5B%5D%7D) |
69
69
 
70
70
  Configure the MCP server in your MCP client configuration (e.g., for Amazon Q Developer CLI, edit `~/.aws/amazonq/mcp.json`):
71
71
 
@@ -14,4 +14,4 @@
14
14
 
15
15
  """awslabs.terraform-mcp-server"""
16
16
 
17
- __version__ = '0.0.0'
17
+ __version__ = '1.0.4'
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "awslabs.terraform-mcp-server"
3
- version = "1.0.3"
3
+ version = "1.0.4"
4
4
  description = "An AWS Labs Model Context Protocol (MCP) server for terraform"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"