matchs/tf-cloud-mcp-server
If you are the rightful owner of tf-cloud-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
The Terraform Cloud MCP Server provides integration with Terraform Cloud API, offering tools for AI assistants to interact with Terraform Cloud workspaces and runs.
Terraform Cloud MCP Server
Model Context Protocol server providing Terraform Cloud API integration as tools for AI assistants.
Features
This MCP server exposes four main tools for interacting with Terraform Cloud:
- get_run_status: Get current run status and recent runs for a workspace
- list_workspaces: List all workspaces in an organization
- get_workspace_details: Get detailed information about a specific workspace
- get_run_details: Get detailed information about a specific run by its ID
Installation
npm install
npm run build
Configuration
The server reads your Terraform Cloud token from ~/.terraform.d/credentials.tfrc.json. Make sure this file exists with the following format:
{
"credentials": {
"app.terraform.io": {
"token": "your-terraform-cloud-token"
}
}
}
Usage
With Claude Desktop
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"terraform-cloud": {
"command": "node",
"args": ["/absolute/path/to/tf-cloud-mcp-server/build/index.js"]
}
}
}
With MCP Inspector
Test your server with the MCP Inspector:
npx @modelcontextprotocol/inspector node build/index.js
With VS Code
Create a .vscode/mcp.json file in your project:
{
"servers": {
"terraform-cloud": {
"type": "stdio",
"command": "node",
"args": ["/absolute/path/to/tf-cloud-mcp-server/build/index.js"]
}
}
}
Available Tools
get_run_status
Get the current run status for a Terraform Cloud workspace.
Parameters:
workspaceName(string, required): Name of the workspaceorganization(string, optional): Organization name (default: "urbanmedia")
Example:
Get the run status for workspace "capivara-dpa-importer"
list_workspaces
List all workspaces in a Terraform Cloud organization.
Parameters:
organization(string, optional): Organization name (default: "urbanmedia")
Example:
List all workspaces in urbanmedia organization
get_workspace_details
Get detailed information about a specific workspace.
Parameters:
workspaceName(string, required): Name of the workspaceorganization(string, optional): Organization name (default: "urbanmedia")
Example:
Get details for workspace "capivara-dpa-importer"
get_run_details
Get detailed information about a specific Terraform Cloud run by its ID.
Parameters:
runId(string, required): Run ID (e.g., "run-abc123")
Example:
Get details for run "run-abc123"
Development
Project Structure
tf-cloud-mcp-server/
├── src/
│ └── index.ts # Main server implementation
├── build/ # Compiled JavaScript (generated)
├── package.json
├── tsconfig.json
└── README.md
Running in Development
npm run dev # Watch mode for TypeScript compilation
Building
npm run build
License
MIT