Terraform
OCI · DOCKER.IO/HASHICORP/TERRAFORM-MCP-SERVER:1.0.0 · SCANNED SEP 20
Generate more accurate Terraform and automate workflows for HCP Terraform and Terraform Enterprise
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security0
- Malware scan not yet available for this package.Unverified
- Known CVEs could not be checked: this artifact ships no SBOM, so there is no dependency list to read. Publishing one would let us assess it.Unverified
- Install-script risk not yet assessed.Unverified
- Dependency health could not be checked: this artifact ships no SBOM, so there is no dependency list to read. Publishing one would let us assess it.Unverified
Provenance & Transparency32
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- License check failed: no license is declared. See how to fix → Fail
- Actively maintained (last published 102 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability36
- 0% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Fail
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 2344 tokens (~213/item across 11 items; 9 tools + 2 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management90
- Stability observed for 27 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 9 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 11 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Unverified: 1 category
A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.
How do I install the Terraform MCP server?
Terraform runs locally as a container image, launched with docker run --rm -i docker.io/hashicorp/terraform-mcp-server:1.0.0. Ready-made configuration for Claude, Cursor, VS Code, Codex and 3 more is on this page, copied from each client's own documentation.
oci · docker.io/hashicorp/terraform-mcp-server:1.0.0
claude mcp add hashicorp-terraform-mcp-server -- docker run --rm -i docker.io/hashicorp/terraform-mcp-server:1.0.0
{
"mcpServers": {
"hashicorp-terraform-mcp-server": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"docker.io/hashicorp/terraform-mcp-server:1.0.0"
]
}
}
} {
"servers": {
"hashicorp-terraform-mcp-server": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"docker.io/hashicorp/terraform-mcp-server:1.0.0"
]
}
}
} codex mcp add hashicorp-terraform-mcp-server -- docker run --rm -i docker.io/hashicorp/terraform-mcp-server:1.0.0
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"hashicorp-terraform-mcp-server": {
"type": "local",
"command": [
"docker",
"run",
"--rm",
"-i",
"docker.io/hashicorp/terraform-mcp-server:1.0.0"
],
"enabled": true
}
}
} mcp_servers:
hashicorp-terraform-mcp-server:
command: "docker"
args: ["run", "--rm", "-i", "docker.io/hashicorp/terraform-mcp-server:1.0.0"] {
"McpServers": {
"hashicorp-terraform-mcp-server": {
"Transport": "stdio",
"Command": "docker",
"Arguments": [
"run",
"--rm",
"-i",
"docker.io/hashicorp/terraform-mcp-server:1.0.0"
]
}
}
} {
"mcpServers": {
"hashicorp-terraform-mcp-server": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"docker.io/hashicorp/terraform-mcp-server:1.0.0"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 20 Sept 26 0
- Security disclosure: unverified → fail ▼ functional
- 19 Sept 26 0
- Security disclosure: fail → unverified ▼ functional
- 18 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.
- 17 Sept 26 −3
- Stability: pass → 0.80 functional
- 16 Sept 26 +1
- Stability: 0.97 → pass security
- 14 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.
- 13 Sept 26 0
- Security disclosure: unverified → fail ▼ functional
- 12 Sept 26 0
- Security disclosure: fail → unverified ▼ functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 20 Sept 2026 · Analysed oci/docker.io/hashicorp/terraform-mcp-server:1.0.0
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | oci |
| Reason | No attestation published |
Background: How many MCP packages publish verified provenance →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
get_latest_module_version ~134
Fetches the latest version of a Terraform module from the public registry
| Name | Type | Req | Description |
|---|---|---|---|
| module_name | string | yes | The name of the module, this is usually the service or group of service the user is deploying e.g., 'security-group', 'secrets-manager' etc. |
| module_provider | string | yes | The name of the Terraform provider for the module, e.g., 'aws', 'google', 'azurerm' etc. |
| module_publisher | string | yes | The publisher of the module, e.g., 'hashicorp', 'aws-ia', 'terraform-google-modules', 'Azure' etc. |
No output schema declared.
No examples provided.
get_latest_provider_version ~90
Fetches the latest version of a Terraform provider from the public registry
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | The name of the Terraform provider, e.g., 'aws', 'azurerm', 'google', etc. |
| namespace | string | yes | The namespace of the Terraform provider, typically the name of the company, or their GitHub organization name that created the provider e.g., 'hashicorp' |
No output schema declared.
No examples provided.
get_module_details ~100
Fetches up-to-date documentation on how to use a Terraform module. You must call 'search_modules' first to obtain the exact valid and compatible module_id required to use this tool.
| Name | Type | Req | Description |
|---|---|---|---|
| module_id | string | yes | Exact valid and compatible module_id retrieved from search_modules (e.g., 'squareops/terraform-kubernetes-mongodb/mongodb/2.1.1', 'GoogleCloudPlatform/vertex-ai/google/0.2.0') |
No output schema declared.
No examples provided.
get_policy_details ~95
Fetches up-to-date documentation for a specific policy from the Terraform registry. You must call 'search_policies' first to obtain the exact terraform_policy_id required to use this tool.
| Name | Type | Req | Description |
|---|---|---|---|
| terraform_policy_id | string | yes | Matching terraform_policy_id retrieved from the 'search_policies' tool (e.g., 'policies/hashicorp/CIS-Policy-Set-for-AWS-Terraform/1.0.1') |
No output schema declared.
No examples provided.
get_provider_capabilities ~233
Get the capabilities of a Terraform provider including the types of resources, data sources, functions, guides, and other features it supports. This tool analyzes the provider documentation to determine what types of capabilities are available: - resources: Infrastructure resources that can be created/managed - data-sources: Read-only data sources for querying existing infrastructure - functions: Provider-specific functions for data transformation - guides: Documentation guides and tutorials for using the provider - actions: Available provider actions (if any) - ephemeral resources: Temporary resources for credentials and tokens - list-resources: List resources for querying existing cloud resources (Terraform Search) Returns a summary with counts and examples for each capability type.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | The name of the Terraform provider, e.g., 'aws', 'azurerm', 'google', etc. |
| namespace | string | yes | The namespace of the Terraform provider, typically the name of the company, or their GitHub organization name that created the provider e.g., 'hashicorp' |
| version | string | – | The version of the provider to analyze (defaults to 'latest') |
No output schema declared.
No examples provided.
get_provider_details ~88
Fetches up-to-date documentation for a specific service from a Terraform provider. You must call 'search_providers' tool first to obtain the exact tfprovider-compatible provider_doc_id required to use this tool.
| Name | Type | Req | Description |
|---|---|---|---|
| provider_doc_id | string | yes | Exact tfprovider-compatible provider_doc_id, (e.g., '8894603', '8906901') retrieved from 'search_providers' |
No output schema declared.
No examples provided.
search_modules ~164
Resolves a Terraform module name to obtain a compatible module_id for the get_module_details tool and returns a list of matching Terraform modules. You MUST call this function before 'get_module_details' to obtain a valid and compatible module_id. When selecting the best match, consider the following: - Name similarity to the query - Description relevance - Verification status (verified) - Download counts (popularity) Return the selected module_id and explain your choice. If there are multiple good matches, mention this but proceed with the most relevant one. If no modules were found, reattempt the search with a new moduleName query.
| Name | Type | Req | Description |
|---|---|---|---|
| current_offset | number | – | Current offset for pagination |
| module_query | string | yes | The query to search for Terraform modules. |
No output schema declared.
No examples provided.
search_policies ~161
Searches for Terraform policies based on a query string. This tool returns a list of matching policies, which can be used to retrieve detailed policy information using the 'get_policy_details' tool. You MUST call this function before 'get_policy_details' to obtain a valid terraform_policy_id. When selecting the best match, consider the following: - Name similarity to the query - Title relevance - Verification status (verified) - Download counts (popularity) Return the selected policyID and explain your choice. If there are multiple good matches, mention this but proceed with the most relevant one. If no policies were found, reattempt the search with a new policy_query.
| Name | Type | Req | Description |
|---|---|---|---|
| policy_query | string | yes | The query to search for Terraform modules. |
No output schema declared.
No examples provided.
search_providers ~362
This tool retrieves a list of potential documents based on the 'service_slug' and 'provider_document_type' provided. You MUST call this function before 'get_provider_details' to obtain a valid tfprovider-compatible 'provider_doc_id'. Use the most relevant single word as the search query for 'service_slug', if unsure about the 'service_slug', use the 'provider_name' for its value. When selecting the best match, consider the following: - Title similarity to the query - Category relevance Return the selected 'provider_doc_id' and explain your choice. If there are multiple good matches, mention this but proceed with the most relevant one.
| Name | Type | Req | Description |
|---|---|---|---|
| provider_document_type | string | yes | The type of the document to retrieve, for general overview of the provider use 'overview', for guidance on upgrading a provider or custom configuration information use 'guides', for deploying resourc… |
| provider_name | string | yes | The name of the Terraform provider to perform the read or deployment operation |
| provider_namespace | string | yes | The publisher of the Terraform provider, typically the name of the company, or their GitHub organization name that created the provider |
| provider_version | string | – | The version of the Terraform provider to retrieve in the format 'x.y.z', or 'latest' to get the latest version |
| service_slug | string | yes | The slug of the service you want to deploy or read using the Terraform provider, prefer using a single word, use underscores for multiple words and if unsure about the service_slug, use the provider_… |
No output schema declared.
No examples provided.
What is the Terraform MCP server?
Terraform is an MCP server listed in the public MCP registry as io.github.hashicorp/terraform-mcp-server. Generate more accurate Terraform and automate workflows for HCP Terraform and Terraform Enterprise. This page covers its container image (docker.io/hashicorp/terraform-mcp-server:1.0.0).
Is the Terraform MCP server safe to use?
Terraform scores 43 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Terraform MCP server expose?
Terraform exposes 9 tools: get_latest_module_version, get_latest_provider_version, get_module_details, get_policy_details, get_provider_capabilities, and 4 more. Their descriptions and schemas cost roughly 1,427 tokens of context every time the server is loaded.
Is the Terraform MCP server still maintained?
Terraform is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.