Terraform Registry MCP Server

by thrashr888

Integrations

  • Enables access to HashiCorp's Terraform Registry, allowing lookup of HashiCorp-provided providers and modules, with detailed information on their configuration, requirements, and usage examples.

  • Provides tools for interacting with the Terraform Registry API, enabling querying of provider information, resource details, module metadata, and recommendations. Supports looking up providers, retrieving resource usage examples, finding modules, listing data sources, and fetching comprehensive resource argument details.

Servidor MCP del Registro Terraform

Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona herramientas para interactuar con la API del Registro de Terraform. Este servidor permite a los agentes de IA consultar información de proveedores, detalles de recursos y metadatos de módulos.

Instalación

Instalación en Cursor

Para instalar y utilizar este servidor MCP en Cursor :

  1. En Cursor, abra Configuración (⌘+,) y navegue hasta la pestaña "MCP".
  2. Haga clic en "+ Agregar nuevo servidor MCP".
  3. Introduzca lo siguiente:
    • Nombre: terraform-registry
    • Tipo: comando
    • Comando: npx -y terraform-mcp-server
  4. Haga clic en "Agregar", luego desplácese hasta el servidor y haga clic en "Deshabilitado" para habilitar el servidor.
  5. Reinicie el cursor, si es necesario, para garantizar que el servidor MCP esté cargado correctamente.

Instalación en Claude Desktop

Para instalar y utilizar este servidor MCP en Claude Desktop:

  1. En Claude Desktop, abra Configuración (⌘+,) y navegue hasta la pestaña "Desarrollador".
  2. Haga clic en "Editar configuración" en la parte inferior de la ventana.
  3. Edite el archivo ( ~/Library/Application Support/Claude/claude_desktop_config.json ) para agregar el siguiente código, luego guarde el archivo.
{ "mcpServers": { "terraform-registry": { "command": "npx", "args": ["-y", "terraform-mcp-server"] } } }
  1. Reinicie Claude Desktop para asegurarse de que el servidor MCP esté cargado correctamente.

Herramientas

Las siguientes herramientas están disponibles en este servidor MCP:

Herramientas básicas del registro

HerramientaDescripción
providerDetailsObtiene información detallada sobre un proveedor de Terraform
resourceUsageObtiene un ejemplo de uso de un recurso de Terraform y recursos relacionados
moduleSearchBusca y recomienda módulos de Terraform según una consulta
listDataSourcesEnumera todas las fuentes de datos disponibles para un proveedor y sus detalles básicos
resourceArgumentDetailsObtiene detalles completos sobre los argumentos de un tipo de recurso
moduleDetailsRecupera metadatos detallados para un módulo Terraform
functionDetailsObtiene detalles sobre una función del proveedor de Terraform
providerGuidesEnumera y visualiza guías y documentación específicas del proveedor.
policySearchBúsquedas de bibliotecas de políticas en el Registro de Terraform
policyDetailsObtiene información detallada sobre una biblioteca de políticas específica

Herramientas de la nube de Terraform

Estas herramientas requieren un token de API de Terraform Cloud ( TFC_TOKEN ):

HerramientaDescripción
listOrganizationsEnumera todas las organizaciones a las que el usuario autenticado tiene acceso
privateModuleSearchBusca módulos privados en una organización
privateModuleDetailsObtiene información detallada sobre un módulo privado
explorerQueryConsulta la API de Terraform Cloud Explorer para analizar datos
listWorkspacesEnumera los espacios de trabajo en una organización
workspaceDetailsObtiene información detallada sobre un espacio de trabajo específico
lockWorkspaceBloquea un espacio de trabajo para evitar ejecuciones
unlockWorkspaceDesbloquea un espacio de trabajo para permitir ejecuciones
listRunsEnumera las ejecuciones de un espacio de trabajo
runDetailsObtiene información detallada sobre una ejecución específica
createRunCrea una nueva ejecución para un espacio de trabajo
applyRunAplica una ejecución que ha sido planificada
cancelRunCancela una ejecución que está en curso
listWorkspaceResourcesEnumera los recursos en un espacio de trabajo

Recursos

El servidor MCP admite los siguientes URI de recursos para listarlos y leerlos a través de los métodos resources/* :

Tipo de recursoEjemplo de URIDescripción
Proveedoresterraform:providersListar todos los espacios de nombres/proveedores
terraform:provider:<namespace>/<name>Obtener detalles de un proveedor específico
Versiones del proveedorterraform:provider:<namespace>/<name>/versionsLista de versiones disponibles para un proveedor
Recursos para proveedoresterraform:provider:<namespace>/<name>/resourcesLista de recursos para un proveedor
terraform:resource:<namespace>/<name>/<resource_name>Obtener detalles de un tipo de recurso específico
Fuentes de datos del proveedorterraform:provider:<namespace>/<name>/dataSourcesEnumerar las fuentes de datos de un proveedor
terraform:dataSource:<namespace>/<name>/<data_source_name>Obtener detalles de una fuente de datos específica
Funciones del proveedorterraform:provider:<namespace>/<name>/functionsFunciones de lista para un proveedor
terraform:function:<namespace>/<name>/<function_name>Obtener detalles de una función específica

El servidor también admite resources/templates/list para proporcionar plantillas para crear:

  • terraform:provider
  • terraform:resource
  • terraform:dataSource

Indicaciones

Las siguientes indicaciones están disponibles para generar respuestas contextuales:

InmediatoDescripciónArgumentos requeridos
migrate-cloudsGenerar código Terraform para migrar infraestructura entre proveedores de nubesourceCloud , targetCloud , terraformCode
generate-resource-skeletonAyuda a los usuarios a crear rápidamente nuevos recursos de Terraform con las mejores prácticasresourceType
optimize-terraform-moduleProporciona recomendaciones prácticas para mejorar el código de Terraform.terraformCode
migrate-provider-versionAyuda con las actualizaciones de la versión del proveedor y los cambios importantes.providerName , currentVersion , targetVersion , terraformCode (opcional)
analyze-workspace-runsAnaliza fallas de ejecución recientes y brinda orientación para la resolución de problemas para los espacios de trabajo de Terraform CloudworkspaceId , runsToAnalyze (opcional, valor predeterminado: 5)

Problemas conocidos con los avisos

Nota : Existe un problema conocido con la función getPrompt que puede provocar fallos del servidor. El servidor registra correctamente los avisos y puede listarlos, pero las solicitudes directas mediante el método getPrompt pueden causar problemas de conectividad. Esto se está investigando y podría estar relacionado con la compatibilidad del SDK o con detalles de implementación. Hasta que se resuelva, utilice listPrompts para ver los avisos disponibles, pero evite las llamadas directas getPrompt .

Ejecución del servidor

El servidor se ejecuta utilizando el transporte stdio para la comunicación MCP:

npm install npm start

Configuración con variables de entorno

El servidor se puede configurar mediante variables de entorno:

Variable de entornoDescripciónValor predeterminado
TERRAFORM_REGISTRY_URLURL base para la API del Registro de Terraformhttps://registry.terraform.io
DEFAULT_PROVIDER_NAMESPACEEspacio de nombres predeterminado para proveedoreshashicorp
LOG_LEVELNivel de registro (error, advertencia, información, depuración)información
REQUEST_TIMEOUT_MSTiempo de espera para solicitudes de API en milisegundos10000
RATE_LIMIT_ENABLEDHabilitar la limitación de velocidad para las solicitudes de APIFALSO
RATE_LIMIT_REQUESTSNúmero de solicitudes permitidas en la ventana de tiempo60
RATE_LIMIT_WINDOW_MSVentana de tiempo para la limitación de velocidad en milisegundos60000
TFC_TOKENToken de API de Terraform Cloud para acceso a registros privados (opcional)

Ejemplo de uso con variables de entorno:

# Set environment variables export LOG_LEVEL="debug" export REQUEST_TIMEOUT_MS="15000" export TFC_TOKEN="your-terraform-cloud-token" # Run the server npm start

Pruebas

Consulte el archivo TESTS.md para obtener información sobre cómo probar este proyecto.

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Conecta modelos de IA al Registro Terraform a través de MCP, lo que permite búsquedas de proveedores, ejemplos de uso de recursos y recomendaciones de módulos para flujos de trabajo de Terraform optimizados.

  1. Instalación
    1. Instalación en Cursor
    2. Instalación en Claude Desktop
  2. Herramientas
    1. Herramientas básicas del registro
    2. Herramientas de la nube de Terraform
  3. Recursos
    1. Indicaciones
      1. Problemas conocidos con los avisos
    2. Ejecución del servidor
      1. Configuración con variables de entorno
    3. Pruebas

      Related MCP Servers

      • A
        security
        A
        license
        A
        quality
        Enhances Claude AI with persistent memory storage for Infrastructure-as-Code components, supporting version tracking and relationship mapping for Terraform and Ansible resources.
        Last updated -
        23
        4
        Python
        MIT License
      • -
        security
        F
        license
        -
        quality
        A demonstration project that uses Cloudflare Workers MCP to create custom AI tools that can be integrated with Claude, Cursor, and other AI assistants supporting the Model Context Protocol.
        Last updated -
        26
        TypeScript
      • -
        security
        A
        license
        -
        quality
        🌍 Terraform Model Context Protocol (MCP) Tool - An experimental CLI tool that enables AI assistants to manage and operate Terraform environments. Supports reading Terraform configurations, analyzing plans, applying configurations, and managing state with Claude Desktop integration. ⚡️
        Last updated -
        239
        Rust
        MIT License
        • Apple
      • A
        security
        A
        license
        A
        quality
        A Model Context Protocol (MCP) server that integrates Claude with the Terraform Cloud API, allowing Claude to manage your Terraform infrastructure through natural conversation.
        Last updated -
        25
        8
        Python
        MIT License
        • Linux
        • Apple

      View all related MCP servers

      ID: zznclqgard