awslabs.terraform-mcp-server 0.0.9__py3-none-any.whl → 0.0.10__py3-none-any.whl
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.
- awslabs/terraform_mcp_server/impl/resources/terraform_aws_provider_resources_listing.py +1 -1
- awslabs/terraform_mcp_server/impl/resources/terraform_awscc_provider_resources_listing.py +1 -1
- awslabs/terraform_mcp_server/scripts/generate_aws_provider_resources.py +2 -1
- awslabs/terraform_mcp_server/scripts/generate_awscc_provider_resources.py +6 -2
- awslabs/terraform_mcp_server/static/__init__.py +3 -3
- {awslabs_terraform_mcp_server-0.0.9.dist-info → awslabs_terraform_mcp_server-0.0.10.dist-info}/METADATA +24 -1
- {awslabs_terraform_mcp_server-0.0.9.dist-info → awslabs_terraform_mcp_server-0.0.10.dist-info}/RECORD +9 -9
- {awslabs_terraform_mcp_server-0.0.9.dist-info → awslabs_terraform_mcp_server-0.0.10.dist-info}/WHEEL +0 -0
- {awslabs_terraform_mcp_server-0.0.9.dist-info → awslabs_terraform_mcp_server-0.0.10.dist-info}/entry_points.txt +0 -0
|
@@ -39,7 +39,7 @@ async def terraform_aws_provider_assets_listing_impl() -> str:
|
|
|
39
39
|
# Check if the static file exists
|
|
40
40
|
if STATIC_RESOURCES_PATH.exists():
|
|
41
41
|
# Read the static file content
|
|
42
|
-
with open(STATIC_RESOURCES_PATH, 'r') as f:
|
|
42
|
+
with open(STATIC_RESOURCES_PATH, 'r', encoding='utf-8') as f:
|
|
43
43
|
content = f.read()
|
|
44
44
|
logger.info('Successfully loaded AWS Provider asset list')
|
|
45
45
|
return content
|
|
@@ -39,7 +39,7 @@ async def terraform_awscc_provider_resources_listing_impl() -> str:
|
|
|
39
39
|
# Check if the static file exists
|
|
40
40
|
if STATIC_RESOURCES_PATH.exists():
|
|
41
41
|
# Read the static file content
|
|
42
|
-
with open(STATIC_RESOURCES_PATH, 'r') as f:
|
|
42
|
+
with open(STATIC_RESOURCES_PATH, 'r', encoding='utf-8') as f:
|
|
43
43
|
content = f.read()
|
|
44
44
|
|
|
45
45
|
logger.info(
|
|
@@ -372,6 +372,7 @@ async def fetch_aws_provider_page() -> ProviderResult:
|
|
|
372
372
|
prefix='terraform_aws_debug_playwright_',
|
|
373
373
|
suffix='.html',
|
|
374
374
|
mode='w',
|
|
375
|
+
encoding='utf-8',
|
|
375
376
|
delete=False,
|
|
376
377
|
) as temp_file:
|
|
377
378
|
temp_file.write(content)
|
|
@@ -1208,7 +1209,7 @@ async def main():
|
|
|
1208
1209
|
args.output.parent.mkdir(parents=True, exist_ok=True)
|
|
1209
1210
|
|
|
1210
1211
|
# Write markdown to output file
|
|
1211
|
-
with open(args.output, 'w') as f:
|
|
1212
|
+
with open(args.output, 'w', encoding='utf-8') as f:
|
|
1212
1213
|
f.write('\n'.join(markdown))
|
|
1213
1214
|
|
|
1214
1215
|
print(f'Successfully generated markdown file at: {args.output}')
|
|
@@ -317,7 +317,11 @@ async def fetch_awscc_provider_page():
|
|
|
317
317
|
|
|
318
318
|
# Save HTML for debugging using tempfile for security
|
|
319
319
|
with tempfile.NamedTemporaryFile(
|
|
320
|
-
prefix='terraform_awscc_debug_playwright_',
|
|
320
|
+
prefix='terraform_awscc_debug_playwright_',
|
|
321
|
+
suffix='.html',
|
|
322
|
+
mode='w',
|
|
323
|
+
encoding='utf-8',
|
|
324
|
+
delete=False,
|
|
321
325
|
) as temp_file:
|
|
322
326
|
temp_file.write(content)
|
|
323
327
|
debug_file_path = temp_file.name
|
|
@@ -1004,7 +1008,7 @@ async def main():
|
|
|
1004
1008
|
args.output.parent.mkdir(parents=True, exist_ok=True)
|
|
1005
1009
|
|
|
1006
1010
|
# Write markdown to output file
|
|
1007
|
-
with open(args.output, 'w') as f:
|
|
1011
|
+
with open(args.output, 'w', encoding='utf-8') as f:
|
|
1008
1012
|
f.write('\n'.join(markdown))
|
|
1009
1013
|
|
|
1010
1014
|
print(f'Successfully generated markdown file at: {args.output}')
|
|
@@ -3,20 +3,20 @@ from importlib import resources
|
|
|
3
3
|
with (
|
|
4
4
|
resources.files('awslabs.terraform_mcp_server.static')
|
|
5
5
|
.joinpath('MCP_INSTRUCTIONS.md')
|
|
6
|
-
.open('r') as f
|
|
6
|
+
.open('r', encoding='utf-8') as f
|
|
7
7
|
):
|
|
8
8
|
MCP_INSTRUCTIONS = f.read()
|
|
9
9
|
|
|
10
10
|
with (
|
|
11
11
|
resources.files('awslabs.terraform_mcp_server.static')
|
|
12
12
|
.joinpath('TERRAFORM_WORKFLOW_GUIDE.md')
|
|
13
|
-
.open('r') as f
|
|
13
|
+
.open('r', encoding='utf-8') as f
|
|
14
14
|
):
|
|
15
15
|
TERRAFORM_WORKFLOW_GUIDE = f.read()
|
|
16
16
|
|
|
17
17
|
with (
|
|
18
18
|
resources.files('awslabs.terraform_mcp_server.static')
|
|
19
19
|
.joinpath('AWS_TERRAFORM_BEST_PRACTICES.md')
|
|
20
|
-
.open('r') as f
|
|
20
|
+
.open('r', encoding='utf-8') as f
|
|
21
21
|
):
|
|
22
22
|
AWS_TERRAFORM_BEST_PRACTICES = f.read()
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: awslabs.terraform-mcp-server
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.10
|
|
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
|
|
@@ -90,6 +90,29 @@ Here are some ways you can work with MCP across AWS, and we'll be adding support
|
|
|
90
90
|
}
|
|
91
91
|
```
|
|
92
92
|
|
|
93
|
+
or docker after a succesful `docker build -t awslabs/terraform-mcp-server .`:
|
|
94
|
+
|
|
95
|
+
```json
|
|
96
|
+
{
|
|
97
|
+
"mcpServers": {
|
|
98
|
+
"awslabs.terraform-mcp-server": {
|
|
99
|
+
"command": "docker",
|
|
100
|
+
"args": [
|
|
101
|
+
"run",
|
|
102
|
+
"--rm",
|
|
103
|
+
"--interactive",
|
|
104
|
+
"--env",
|
|
105
|
+
"FASTMCP_LOG_LEVEL=ERROR",
|
|
106
|
+
"awslabs/terraform-mcp-server:latest"
|
|
107
|
+
],
|
|
108
|
+
"env": {},
|
|
109
|
+
"disabled": false,
|
|
110
|
+
"autoApprove": []
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
```
|
|
115
|
+
|
|
93
116
|
## Security Considerations
|
|
94
117
|
|
|
95
118
|
When using this MCP server, you should consider:
|
|
@@ -2,8 +2,8 @@ awslabs/__init__.py,sha256=4zfFn3N0BkvQmMTAIvV_QAbKp6GWzrwaUN17YeRoChM,115
|
|
|
2
2
|
awslabs/terraform_mcp_server/__init__.py,sha256=a-zIkwClerA84_XGykBggO4w5kf8f85EapnWnbAH01c,58
|
|
3
3
|
awslabs/terraform_mcp_server/server.py,sha256=ZyX_w3oath8l2T3tH63EyH5J_l93LZGCxW2HCeL4t2s,15787
|
|
4
4
|
awslabs/terraform_mcp_server/impl/resources/__init__.py,sha256=bxqHGDtuwWq8w-21lT5GzOuxBqkmnUvW6cnSA36ve3A,388
|
|
5
|
-
awslabs/terraform_mcp_server/impl/resources/terraform_aws_provider_resources_listing.py,sha256=
|
|
6
|
-
awslabs/terraform_mcp_server/impl/resources/terraform_awscc_provider_resources_listing.py,sha256=
|
|
5
|
+
awslabs/terraform_mcp_server/impl/resources/terraform_aws_provider_resources_listing.py,sha256=ohd-LOCuwLh0XchmUVRNIlgEcb1qJbiWMvVVklfZZyI,1991
|
|
6
|
+
awslabs/terraform_mcp_server/impl/resources/terraform_awscc_provider_resources_listing.py,sha256=rcxTeN2SvzddNi5bMzMF8oZP9O-Nq4PxzFBiqHbsY-I,2078
|
|
7
7
|
awslabs/terraform_mcp_server/impl/tools/__init__.py,sha256=4D7D6cYF98qj4lltiO5UOHNFRl8Gfg7Zv9n-wRlOj3o,715
|
|
8
8
|
awslabs/terraform_mcp_server/impl/tools/execute_terraform_command.py,sha256=_fPxC2wT23oWa9XaAoUEV1j5lK7Xpi7MqBAq85fLNdU,8507
|
|
9
9
|
awslabs/terraform_mcp_server/impl/tools/run_checkov_scan.py,sha256=oS6qgUPPti7lpa2VNsUwPbswiq2hgpe49fggVUI_PfM,13435
|
|
@@ -14,16 +14,16 @@ awslabs/terraform_mcp_server/impl/tools/search_user_provided_module.py,sha256=6d
|
|
|
14
14
|
awslabs/terraform_mcp_server/impl/tools/utils.py,sha256=GB1OuhYgrg00AzKfhgaUpQwbVBK5D56GQLcm60NHd1c,20500
|
|
15
15
|
awslabs/terraform_mcp_server/models/__init__.py,sha256=-kCRp9lGMz0-SXv0XvXP48_dVCeMbQIJqkxLTqXlmhk,801
|
|
16
16
|
awslabs/terraform_mcp_server/models/models.py,sha256=oQutL78FdbXXQgekXjp8Dhotq-A-wBJLylQAHRMyNs0,12614
|
|
17
|
-
awslabs/terraform_mcp_server/scripts/generate_aws_provider_resources.py,sha256=
|
|
18
|
-
awslabs/terraform_mcp_server/scripts/generate_awscc_provider_resources.py,sha256=
|
|
17
|
+
awslabs/terraform_mcp_server/scripts/generate_aws_provider_resources.py,sha256=wxwt3MxD3xUsrDXnfa9-3EAQfBg3fO-CzwkzjYNMIRU,56770
|
|
18
|
+
awslabs/terraform_mcp_server/scripts/generate_awscc_provider_resources.py,sha256=ieHzBfTHPbxkTL3d_mRVga2-xLRRma4TnXC6Amq1ugc,48823
|
|
19
19
|
awslabs/terraform_mcp_server/scripts/scrape_aws_terraform_best_practices.py,sha256=t_eFbciBwZXdK6pNkkcp4X7VPR4vXyXkmE_YLhm6Xr4,3783
|
|
20
20
|
awslabs/terraform_mcp_server/static/AWSCC_PROVIDER_RESOURCES.md,sha256=I_vu3dWXzd9Pxcd7tkdxFQs97wtuunyoXdJCAkCUXnE,440270
|
|
21
21
|
awslabs/terraform_mcp_server/static/AWS_PROVIDER_RESOURCES.md,sha256=OMboscC0Ov6O3U3K1uqrzRzx18nq_5AsJzITc5-CA8Y,303030
|
|
22
22
|
awslabs/terraform_mcp_server/static/AWS_TERRAFORM_BEST_PRACTICES.md,sha256=cftJ9y2nZ0kMendoV6WBlQFsNw-QnGnmF6dR88eoYdA,87665
|
|
23
23
|
awslabs/terraform_mcp_server/static/MCP_INSTRUCTIONS.md,sha256=P82tv9KJJxhoG5UFKaG16nQS5a0ud6Fcvg_BUypz-z0,6445
|
|
24
24
|
awslabs/terraform_mcp_server/static/TERRAFORM_WORKFLOW_GUIDE.md,sha256=1RrSF7NH0BNVnQTZFwPhuaWsxElmCcwvl07iLOnO2gw,9768
|
|
25
|
-
awslabs/terraform_mcp_server/static/__init__.py,sha256=
|
|
26
|
-
awslabs_terraform_mcp_server-0.0.
|
|
27
|
-
awslabs_terraform_mcp_server-0.0.
|
|
28
|
-
awslabs_terraform_mcp_server-0.0.
|
|
29
|
-
awslabs_terraform_mcp_server-0.0.
|
|
25
|
+
awslabs/terraform_mcp_server/static/__init__.py,sha256=mgAvoiD1_fgcgK5Sbf2nZLlX47D6ZuwuZbMrbNsyUKE,603
|
|
26
|
+
awslabs_terraform_mcp_server-0.0.10.dist-info/METADATA,sha256=E10qB8DdJLTF6FEHkOdDyusvlKQy1-VlpiZVPULJrBA,5104
|
|
27
|
+
awslabs_terraform_mcp_server-0.0.10.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
28
|
+
awslabs_terraform_mcp_server-0.0.10.dist-info/entry_points.txt,sha256=jCTPQeUJ74jpIDcYwVHQCk-y0n0ehRFFerh_Qm4ZU1c,90
|
|
29
|
+
awslabs_terraform_mcp_server-0.0.10.dist-info/RECORD,,
|
{awslabs_terraform_mcp_server-0.0.9.dist-info → awslabs_terraform_mcp_server-0.0.10.dist-info}/WHEEL
RENAMED
|
File without changes
|
|
File without changes
|