Facets Module MCP Server

This MCP (Model Context Protocol) Server for the Facets Module assists in creating and managing Terraform modules for infrastructure as code. It

Local serverstdio

What is the Facets Module MCP Server?

This MCP (Model Context Protocol) Server for the Facets Module assists in creating and managing Terraform modules for infrastructure as code. It integrates with

What you get

  • Secure File Operations —
  • Modular MCP Tools —
  • Facets Module Generation —
  • Module Forking —
  • Supplementary Instructions Support —
  • Module Preview and Testing —

Configuration and credentials

The MCP Server requires uv for MCP orchestration. The package is available on PyPI: facets-module-mcp

More MCP options

Compare MCP servers by category, or browse hosted MCP servers if you prefer an endpoint over a local process.

Maintainer setup documentation.

Recorded tools

Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.

ToolWhat it does
list_filesLists all files in the specified module directory securely within the working directory.
read_fileReads the content of a file within the working directory.
edit_file_blockApply surgical edits to specific blocks of text in files. Makes precise changes without rewriting entire files. Cannot edit outputs.tf or facets.yaml files.
write_config_filesWrites and validates facets.yaml configuration files with dry-run and diff previews.
write_resource_fileWrites Terraform resource files (main.tf, variables.tf, etc.) safely. Excludes outputs.tf and facets.yaml.
write_outputsWrites the outputs.tf file for a module with output attributes and interfaces in a local block.
write_readme_fileWrites a README.md file for the module directory with AI-generated content.
write_generic_fileWrites files generically with working directory and file type checks. Path: facets_mcp/tools/module_files.py
generate_module_with_user_confirmationGenerates a new Terraform module scaffold with dry-run preview and user confirmation.
validate_moduleValidates a Terraform module directory using FTF CLI standards and checks output types.
push_preview_module_to_facets_cpPreviews a module by pushing a test version to the control plane with git context extracted automatically.
register_output_typeRegisters a new output type in the Facets control plane with interfaces and attributes and providers.
get_output_type_detailsRetrieves details for a specific output type from the Facets control plane.

How to install the Facets Module MCP Server

{
  "mcpServers": {
    "facets-module": {
      "command": "uvx",
      "args": [
        "facets-module-mcp@latest",
        "/Path/to/working-directory"
      ],
      "env": {
        "FACETS_PROFILE": "default",
        "FACETS_USERNAME": "<YOUR_USERNAME>",
        "FACETS_TOKEN": "YOUR_FACETS_TOKEN",
        "CONTROL_PLANE_URL": "<YOUR_CONTROL_PLANE_URL>"
      }
    }
  }
}

From the project documentation. Replace placeholders and example paths before connecting.

Configuration

The MCP Server requires uv for MCP orchestration. The package is available on PyPI: facets-module-mcp

VariableDescriptionRequired
FACETS_PROFILEDeclared in the maintainer’s client configuration.Check documentation
FACETS_USERNAMEDeclared in the maintainer’s client configuration.Check documentation
FACETS_TOKENDeclared in the maintainer’s client configuration.Check documentation
CONTROL_PLANE_URLDeclared in the maintainer’s client configuration.Check documentation

Example prompts to try

  • “Use Facets Module MCP to FIRST STEP get instructions.”
  • “Use Facets Module MCP to list files.”
  • “Use Facets Module MCP to read file.”

Frequently asked questions

This MCP (Model Context Protocol) Server for the Facets Module assists in creating and managing Terraform modules for infrastructure as code. It integrates with Confirm the tools offered by your installed version in the connected client. Tool availability and permissions depend on the server and account configuration.