İçerik
Terraform MCP kullanmaya başladığımdan beri Infrastructure as Code (IaC) yazma sürecimde büyük değişim yaşadım. AI asistanına “X için Terraform yaz” dediğinizde güncel olmayan argümanlar, yanlış resource isimleri ve uydurma örneklerle karşılaştıysanız, bu sorunları çözen HashiCorp’un çözümünü keşfetmiş olacaksınız.
HashiCorp’un Terraform MCP Server bu problemleri AI araçlarınızı doğrudan canlı Terraform Registry verilerine bağlayarak hallediyor. Provider’lar, resource’lar, modüller ve policy’ler için gerçek zamanlı veri alıyor. Sonuç: daha güvenilir cevaplar ve daha iyi IaC yazma deneyimi.

MCP (Model Context Protocol) Nedir ve Terraform Neden Buna İhtiyaç Duyar?
MCP AI client’larının (Copilot, Claude, Cursor vb.) harici araçlarla güvenli ve yapılandırılmış şekilde konuşmasını sağlayan standart. Terraform MCP Server ise HashiCorp’un resmi MCP implementasyonu ve Terraform Registry API’lerini AI client’ınıza açıyor.
Bu sayede AI asistanınız gerçek dokümantasyon, şema ve modülleri ihtiyaç anında bulabiliyor. Docker container olarak çalışıyor ve hem stdio (yerel) hem de streamable-http (uzak) transport’ları destekliyor.
Terraform için MCP Nedir?
MCP Model Context Protocol anlamına geliyor – AI destekli araçların harici veri kaynaklarına ve API’lere güvenli, sandbox ortamında bağlanması için standart yol.
Terraform MCP Server HashiCorp’un resmi MCP implementasyonu. AI araçlarını doğrudan Terraform Registry ile bağlayarak şunları yapabiliyor:
- Provider, resource ve data source arama
- En güncel markdown dokümantasyonu çekme
- Modül keşfi ve inceleme
- Sentinel/Terraform policy’lere göz atma
Artık tahminde bulunmak yerine AI asistanınız kaynaktan doğru bilgi alıyor.
Terraform MCP Neden Oyunu Değiştiriyor
- Sıfır Halüsinasyon Dokümantasyonu — LLM’ler artık argümanları uydurmak yerine provider dokümantasyonundaki gerçek bilgileri gösteriyor
- Her Zaman Güncel — Terraform Registry’den en son şema ve örnekleri çekiyor
- Çoklu Client Desteği — GitHub Copilot (VS Code Agent), Cursor, Claude Desktop, Amazon Q Developer ile çalışıyor
- Güvenlik Dostu — Yerel (stdio) veya uzak (HTTP) çalıştırılabilir, origin kısıtlamaları ile
- Hızlı Developer Onboarding — Yeni ekip üyeleri doküman aramak zorunda kalmadan natural language ile resource/modül keşfedebiliyor
Günlük Kullanım Örnekleri
Etkinleştirildiğinde AI aracınızla şöyle konuşabilirsiniz:
“Google Cloud provider’da AI ile ilgili resource’ları listele.” → google_vertex_ai_endpoint
, google_document_ai_processor
vb. döndürür.
“azurerm_storage_account için dokümantasyon ve örnek göster.” → Resmi resource dokümantasyonu ve kullanım snippet’lerini getirir.
“IBM Cloud VM oluşturmak için modül bul ve input/output’ları özetle.” → Terraform Registry’de arar ve detayları gösterir.
Yüksek Seviye Mimari
- AI Client (Copilot/Claude/Cursor) MCP araçlarını çağırır
- Terraform MCP Server Terraform Registry‘den canlı veri çeker
- Client dokümantasyon, sürümler, input/output’lar, örnekleri render eder — tahmin yok
Terraform MCP Server Nasıl Deploy Edilir
Terraform MCP (Model Context Protocol) server AI araçlarınızın canlı Terraform provider/modül verilerini doğrudan Terraform Registry’den çekmesini sağlıyor. Docker container olarak çalışıyor ve hem yerel hem de uzak kurulum destekliyor.
Gereksinimler
- Docker
- Docker Engine v20.10.21+
- Docker Desktop v4.14.0+
- MCP Destekli Client’lar:
- VS Code + Copilot
- Cursor
- Anthropic Claude Desktop
Yerel Kurulum (stdio mode)
Docker kullanarak çalıştırmak için:
docker run -i --rm hashicorp/terraform-mcp-server
VS Code User Settings (settings.json
) dosyanıza şunu ekleyin:
{
"mcp": {
"servers": {
"terraform": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"hashicorp/terraform-mcp-server"
]
}
}
}
}
Source’tan Kurulum (Opsiyonel)
En son release için:
go install github.com/hashicorp/terraform-mcp-server/cmd/terraform-mcp-server@latest
Main branch için:
go install github.com/hashicorp/terraform-mcp-server/cmd/terraform-mcp-server@main
Client’ınızı yapılandırın:
{
"mcp": {
"servers": {
"terraform": {
"command": "/path/to/terraform-mcp-server",
"args": ["stdio"]
}
}
}
}
Uzak Kurulum (HTTP mode)
Environment variable’ları ayarlayın:
export TRANSPORT_MODE=streamable-http
export TRANSPORT_HOST=0.0.0.0
export TRANSPORT_PORT=8080
Build ve çalıştırma:
git clone https://github.com/hashicorp/terraform-mcp-server.git
cd terraform-mcp-server
make docker-build
docker run -p 8080:8080 --rm -e MODE=streamable-http terraform-mcp-server:dev
Client’ınızda MCP’yi Etkinleştirin
- VS Code: Settings → Enable MCP → Select Terraform MCP tools
- Cursor: Chat Settings → Enable MCP → Verify tools are active
- Claude Desktop: Tools Menu → Enable Terraform MCP
Artık AI asistanınız canlı Terraform dokümantasyonu çekebilir, modül arayabilir ve policy’leri doğrudan Registry’den alabilir — güncel olmayan veri yok.
Terraform MCP Server ile Model Prompt Örnekleri
Terraform MCP Server deploy ettikten sonra AI modelinize Terraform configuration yazmasında yardım etmesi için sorular sorabilirsiniz.
⚠ Not: MCP henüz beta aşamasında — production’da kullanılmıyor.
Nasıl Çalışır
- MCP server AI’ınızı canlı Terraform Registry verilerine bağlar
- Sorunuz registry’deki provider’lar veya modüller hakkındaysa AI MCP server’ı sorgular
- Genel Terraform soruları veya kod üretimi için AI hala internet veya diğer kaynakları kullanabilir
Başlamadan Önce
- Terraform MCP server’ı deploy ettiğinizden emin olun.
- AI client’ınızı MCP kullanacak şekilde yapılandırıldığınızdan emin olun.
Daha İyi MCP Prompt’ları için İpuçları
- Spesifik olun: Tam provider veya modül ismini belirtin
- Örnek: “compute disk” yerine
google_compute_disk
kullanın - Full resource address kullanın (Terraform CLI dokümantasyonuna bakın)
- En son sürümü veya spesifik provider/modül detayları isteyin
Prompt Örnekleri
1. Google Provider’da AI İlgili Resource’ları Alma
Prompt:
I need help understanding what resources are available in the Google provider that are for AI
Sonuç: Şu Google AI resource’larını listeler:
vertex_ai_dataset
vertex_ai_endpoint
vertex_ai_feature_group
document_ai_processor
Google Cloud’da AI/ML workflow’larını yönetmek için bunları kullanın.
2. Azure’da Storage Bucket’ları Kurma
Prompt:
I need help setting up storage buckets in the Azure provider
Sonuç: Şu resource’ları gösterir:
azurerm_storage_account
azurerm_storage_container
Örnek:
resource "azurerm_resource_group" "example" {
name = "example-resources"
location = "West Europe"
}
resource "azurerm_storage_account" "example" {
name = "storageaccountname"
resource_group_name = azurerm_resource_group.example.name
location = azurerm_resource_group.example.location
account_tier = "Standard"
account_replication_type = "GRS"
tags = {
environment = "staging"
}
}
3. IBM VM Modülü Bulma
Prompt:
Is there a module to help with setting up an IBM VM?
Sonuç: Yes — intel/ibm-vm/intel/1.2.2
- Açıklama: Intel Cloud Optimization Module — IBM VM
- Kaynak: GitHub — intel/terraform-intel-ibm-vm
DevOps Ekipleri için Gerçek Faydalar
MCP + Terraform DevOps ekiplerine “daha güncel dokümantasyon” vaadinin ötesinde nasıl gerçek fayda sağlıyor:
Daha Az PR Ping-Pong
Yanlış argümanlar, güncel olmayan örnekler veya eksik required field’lar nedeniyle PR’larda gidip gelme yerine reviewer’lar önceden doğrulanmış IaC alıyor. MCP review sırasında Terraform Registry‘yi sorgular, böylece gerçek provider syntax’ından sapma merge’den önce yakalanır.
Manuel Doküman Kontrolü Gereksiz
Provider sürümleri sık değişir; manuel takip etmek yorucu. MCP required_providers
‘ınızdaki tam sürüm için gerçek zamanlı dokümantasyon ve şema veriyor. Artık Google’lamak, bookmark’lamak veya hafızaya güvenmek yok.
Multi-Provider Ortamlarda Güven
Multi-cloud veya hibrit setup’larda (AWS + Azure + GCP + SaaS) farklı ekip üyeleri bir provider’da Terraform-fluent olabilir ama diğerlerinde değil. MCP her DevOps engineer’ı tüm provider’lar için “doküman-native” yapıyor — azaltılmış context switching, daha hızlı ramp-up.
Yeni Engineer’lar için Daha Hızlı Onboarding
Yeni işe başlayanlar registry sayfalarında avlanmak yerine natural language sorularla resource ve modül keşfedebiliyor. Bu ilk PR’a kadar geçen süreyi kısaltır ve karmaşık infrastructure’a onboarding’i daha güvenli hale getirir.
Authoring Sırasında Daha Az Context Switching
Bunun yerine:
Kod yaz → tarayıcı aç → registry ara → snippet kopyala → kodu edit et
Bunu kullanıyoruz:
AI'ya sor → grounded snippet editor'da döndürülür → yapıştır
Sonuç
Terraform + MCP AI asistanınıza Terraform ekosistemine canlı, kaynak-of-truth erişimi veriyor. Etkinleştirmesi basit (Docker + client config), çalıştırması güvenli (stdio yerel veya HTTP gateway arkasında), ve günlük IaC authoring ve review’lar için çok yararlı.
Halüsinasyon yapan Terraform ile yandıysanız, bu güncellemeyi kaçırmayın. Daha fazla bilgi için HashiCorp Developer dokümantasyonuna göz atabilir ve Docker Hub’daki resmi image‘ı inceleyebilirsiniz.
İlginizi çekerse Her Developer’ın Denemesi Gereken 6 Open-Source Tool yazımı da okuyabilirsiniz.