Любой, кто просил ChatGPT или Claude написать конфиг Terraform, сталкивался с проблемой: модель выдаёт HCL, который был актуален год назад. Например, acl = "private" внутри aws_s3_bucket, хотя этот атрибут депрекейтнут в AWS-провайдере с версии 4. Причина — знания модели ограничены датой обучения, а реестр провайдеров обновляется каждую неделю.
11 июня 2026 года HashiCorp (теперь в составе IBM) перевела в GA свой ответ на эту боль — Terraform MCP Server 1.0. Это официальный MCP-сервер, дающий ИИ-ассистенту прямой доступ к Terraform Registry: актуальную документацию провайдеров, модули, политики — в момент запроса, а не из training data. MCP (Model Context Protocol) — открытый стандарт от Anthropic, позволяющий моделям вызывать внешние инструменты. Сервер работает как прослойка между LLM и реестром.
| Инструмент | Назначение |
|---|---|
| search_providers | Поиск провайдера в реестре |
| get_provider_details | Получение актуальной документации по ресурсам и аргументам |
| get_latest_provider_version | Проверка свежей версии провайдера |
| search_modules / get_module_details | Поиск и детали модулей с inputs/outputs |
| search_policies | Поиск Sentinel-политик для governance |
Что именно умеет сервер? Он предоставляет набор инструментов, сгруппированных в три toolset: registry (публичный Registry), registry-private (приватный Registry для HCP Terraform) и terraform (операции над workspace). Инструменты включают: search_providers для поиска провайдера, get_provider_details для получения актуальной документации по ресурсам и аргументам, get_latest_provider_version для проверки свежей версии, а также search_modules и get_module_details для модулей с их inputs/outputs. Также есть поиск Sentinel-политик для governance. Каждый инструмент включается или отключается флагом --toolsets.
Сервер решает проблему устаревших знаний моделей: данные берутся из Registry в момент запроса, а не из training data.
Сравнение на примере S3-бакета наглядно показывает разницу. Модель без доступа к Registry выдаёт устаревший конфиг: resource "aws_s3_bucket" с acl и versioning внутри — эти аргументы вынесены в отдельные ресурсы ещё в AWS-провайдере v4. К тому же с 2023 года S3 по умолчанию отключает ACL (Bucket Owner Enforced), поэтому aws_s3_bucket_acl с private на новом бакете просто упадёт. Модель, использующая MCP, сначала вызывает search_providers и get_provider_details, затем пишет корректный современный конфиг с отдельными ресурсами для версионирования и блокировки публичного доступа. Разница не в том, что модель «поумнела» — она перестала угадывать.
Развернуть сервер можно за пять минут. Он работает в Docker-контейнере и поддерживает два транспорта: stdio (локально) и streamable-http (удалённо). Для публичного Registry токен не нужен. Пример настройки для Claude Desktop, Cursor или VS Code agent mode: в конфиг MCP добавляется запись с командой docker run -i --rm hashicorp/terraform-mcp-server. Всё — модель сама находит и вызывает нужные инструменты при запросе HCL.
Для команд, использующих HCP Terraform или Terraform Enterprise, подключается приватный Registry: нужно задать переменные TFE_ADDRESS и TFE_TOKEN. Тогда модель получает доступ к внутренним модулям, провайдерам, организациям и workspace. Однако важно: деструктивные операции (apply, destroy) по умолчанию отключены флагом ENABLE_TF_OPERATIONS (false). Но не стоит обманываться: возможности агента определяются правами самого TFE_TOKEN, поэтому принцип наименьших привилегий на токене обязателен. Сервер — мощный инструмент, но без поводка в продакшн его пускать нельзя.



