Panoramica degli strumenti del server MCP per Terraform per Azure

Gli strumenti del server MCP Azure consentono di usare Terraform per Azure usando prompt in linguaggio naturale. È possibile recuperare la documentazione del provider AzureRM e AzAPI, individuare Azure moduli verificati, esportare le risorse Azure esistenti nella configurazione di Terraform e convalidare aree di lavoro e piani terraform rispetto alla libreria dei criteri di Azure (policy-library-avm) tramite conftest.

Gli strumenti Terraform per Azure coprono l'intero ciclo di vita dell'Infrastructure as Code con Terraform su Azure, dalla ricerca nella documentazione del provider all'esportazione delle risorse e alla convalida dei criteri. Per altre informazioni, vedere Terraform nella documentazione Azure.

Note

Le annotazioni degli strumenti descrivono solo il comportamento sul lato Azure. Alcuni strumenti di questa famiglia generano file locali o comandi che l'agente deve eseguire, ma ciò non è rispecchiato nelle indicazioni di annotazione.

Note

Parametri degli strumenti: gli strumenti del server MCP di Azure definiscono i parametri per i dati necessari per completare le attività. Alcuni di questi parametri sono specifici di ogni strumento e sono documentati qui. Altri parametri sono globali e condivisi da tutti gli strumenti. Per altre informazioni, vedere Parametri degli strumenti.

Ottenere la documentazione del provider AzureRM

Recupera la documentazione completa del provider Terraform di AzureRM per un tipo di risorsa specificato. Restituisce il riepilogo delle risorse, gli argomenti con descrizioni e requisiti, attributi, esempi di utilizzo e note importanti.

Alcuni prompt di esempio includono:

  • Ottenere la documentazione della risorsa: "Visualizzare la documentazione di Terraform per azurerm_resource_group"
  • Cercare un'origine dati: "Ottenere la documentazione dell'origine dati per azurerm_storage_account"
  • Filtra per argomento: "Mostra la documentazione per l'argomento address_space in azurerm_virtual_network".
  • Controllare gli attributi: "Mostra gli attributi per azurerm_key_vault"
Parametro Obbligatorio o facoltativo Descrizione
Tipo di risorsa Obbligatorio Nome del tipo di risorsa Terraform di AzureRM, ad esempio azurerm_resource_group, azurerm_storage_account. Il azurerm_ prefisso è facoltativo.
Tipo di documento Facoltativo Tipo di documentazione da recuperare. Opzioni: resource (impostazione predefinita), data-source.
Argomento Facoltativo Filtrare i risultati in base a un nome di argomento specifico.
Attributo Facoltativo Filtrare i risultati in base a un nome di attributo specifico.

Specificare Argument o Attribute — lo strumento consulta la documentazione per quello specifico tipo di elemento.

Suggerimenti per l'annotazione degli strumenti:

Distruttivo Idempotente Open World Sola lettura Secret Locale richiesta

Ottenere la documentazione del provider AzAPI

Recupera la documentazione e lo schema del provider AzAPI Terraform per un tipo di risorsa Azure specificato. Restituisce lo schema delle risorse in formato HCL adatto per azapi_resource i blocchi, incluse le definizioni di proprietà con tipi e requisiti, informazioni sulle risorse padre ed esempi di utilizzo di Terraform. Questo strumento riutilizza le definizioni dei tipi di Azure Bicep per generare schemi AzAPI accurati.

Alcuni prompt di esempio includono:

  • Ottieni lo schema della risorsa: "Mostrami lo schema AzAPI di Microsoft.Compute/virtualMachines"
  • Versione API specifica: "Ottieni la documentazione AzAPI per Microsoft.Storage/storageAccounts per la versione API 2023-05-01"
  • Esplora un tipo di risorsa: "Quali proprietà ha Microsoft.Network/virtualNetworks in AzAPI?"
Parametro Obbligatorio o facoltativo Descrizione
Tipo di risorsa Obbligatorio Tipo di risorsa Azure in formato ARM, ad esempio Microsoft.Compute/virtualMachines, Microsoft.Storage/storageAccounts).
Versione dell'API Facoltativo Versione dell'API da usare per lo schema delle risorse. Se omesso, viene usata la versione stabile più recente.

Suggerimenti per l'annotazione degli strumenti:

Distruttivo Idempotente Open World Sola lettura Secret Locale richiesta

Elencare Azure moduli verificati

Recupera tutti i moduli verificati Azure disponibili per Terraform. Restituisce un elenco di moduli con il nome, la descrizione, il riferimento all'origine e l'URL del repository. Il campo di origine può essere usato direttamente nei blocchi del modulo Terraform.

Alcuni prompt di esempio includono:

  • Lista tutti i moduli: "Elencare tutti i moduli verificati Azure disponibili per Terraform"
  • Trova moduli: "Quali Azure Verified Modules sono disponibili per l'archiviazione?"
  • Esplorare i moduli: "Mostra il catalogo dei moduli AVM"

Questo strumento non ha parametri obbligatori.

Suggerimenti per l'annotazione degli strumenti:

Distruttivo Idempotente Open World Sola lettura Secret Locale richiesta

Ottenere le versioni del modulo Azure verificato

Recupera tutte le versioni disponibili di un Azure modulo verificato (AVM) specificato. Restituisce i tag di versione con date di creazione, ordinate dal più recente al meno recente. La prima versione nell'elenco è la più recente.

Alcuni prompt di esempio includono:

  • Controllare le versioni: "Quali versioni sono disponibili per avm-res-storage-storageaccount?"
  • Versione più recente: "Qual è la versione più recente del modulo AVM per le reti virtuali?"
Parametro Obbligatorio o facoltativo Descrizione
Nome modulo Obbligatorio Nome del modulo verificato Azure( ad esempio, avm-res-storage-storageaccount).

Suggerimenti per l'annotazione degli strumenti:

Distruttivo Idempotente Open World Sola lettura Secret Locale richiesta

Ottieni la documentazione del modulo verificato di Azure

Recupera la documentazione (README.md) per una versione specifica di un modulo verificato di Azure. Restituisce la documentazione completa del modulo, inclusi esempi di utilizzo, variabili di input, valori di output e descrizioni delle risorse.

Alcuni prompt di esempio includono:

  • Ottieni la documentazione del modulo: "Mostrami la documentazione per avm-res-storage-storageaccount versione 0.4.0"
  • Esempi di utilizzo: "Ottenere esempi di utilizzo per il modulo key vault AVM versione 0.3.0"
Parametro Obbligatorio o facoltativo Descrizione
Nome modulo Obbligatorio Nome del modulo verificato Azure( ad esempio, avm-res-storage-storageaccount).
Versione del modulo Obbligatorio Versione del modulo verificato Azure( ad esempio, 0.4.0).

Suggerimenti per l'annotazione degli strumenti:

Distruttivo Idempotente Open World Sola lettura Secret Locale richiesta

Esportare una singola risorsa in Terraform

Genera un comando aztfexport per esportare una singola risorsa Azure nella configurazione di Terraform. Restituisce il comando e gli argomenti che l'agente deve eseguire localmente. Se aztfexport non è installato in locale, restituisce invece le istruzioni di installazione.

Alcuni prompt di esempio includono:

  • Esporta una risorsa: "Esporta il mio account di archiviazione come configurazione Terraform"
  • Usare il provider AzAPI: "Esportare la risorsa /subscriptions/.../storageAccounts/myaccount usando il provider azapi"
  • Nome personalizzato: "Esportare questa macchina virtuale in Terraform con il nome della risorsa 'primary_vm'"

Impostare questa opzione su false per esportazioni autorevoli — quando true, l'esportazione potrebbe essere completata con risorse saltate o un'infrastruttura come codice incompleta.

Parametro Obbligatorio o facoltativo Descrizione
ID risorsa Obbligatorio ID risorsa Azure completo da esportare, ad esempio /subscriptions/.../resourceGroups/.../providers/Microsoft.Storage/storageAccounts/mystorageaccount.
Cartella di output Facoltativo Nome della cartella di output per i file Terraform generati. Nessun valore predefinito: lo strumento richiede un percorso quando viene omesso.
Provider Facoltativo Provider Terraform da usare: azurerm (impostazione predefinita) o azapi.
Nome della risorsa Terraform Facoltativo Nome della risorsa personalizzato da usare nella configurazione di Terraform generata.
Includi assegnazione di ruolo Facoltativo Includere le assegnazioni di ruolo nell'esportazione.
Parallelism Facoltativo Numero di operazioni parallele (impostazione predefinita: 10, max: 50).
Continua in caso di errore Facoltativo Continuare l'esportazione anche se alcune risorse hanno esito negativo (impostazione predefinita: true).

Suggerimenti per l'annotazione degli strumenti:

Distruttivo Idempotente Open World Sola lettura Secret Locale richiesta

Esportare un gruppo di risorse in Terraform

Genera un comando aztfexport per esportare un gruppo di risorse Azure e tutte le relative risorse nella configurazione di Terraform. Restituisce il comando e gli argomenti che l'agente deve eseguire localmente. Se aztfexport non è installato in locale, restituisce invece le istruzioni di installazione.

Alcuni prompt di esempio includono:

  • Esportare un gruppo di risorse: "Esportare il gruppo di risorse my-app-rg in Terraform"
  • Denominazione personalizzata: "Esportare il gruppo di risorse production-rg con modello di nome 'prod_{type}'"
  • Usare AzAPI: "Esportare il gruppo di risorse in Terraform usando il provider azapi"

Impostare questa opzione su false per esportazioni autorevoli — quando true, l'esportazione potrebbe essere completata con risorse saltate o un'infrastruttura come codice incompleta.

Parametro Obbligatorio o facoltativo Descrizione
Gruppo di risorse Obbligatorio Nome del gruppo di risorse Azure da esportare.
Cartella di output Facoltativo Nome della cartella di output per i file Terraform generati. Nessun valore predefinito: lo strumento richiede un percorso quando viene omesso.
Provider Facoltativo Provider Terraform da usare: azurerm (impostazione predefinita) o azapi.
Modello di nome Facoltativo Modello per la denominazione delle risorse nella configurazione di Terraform generata.
Includi assegnazione di ruolo Facoltativo Includere le assegnazioni di ruolo nell'esportazione.
Parallelism Facoltativo Numero di operazioni parallele (impostazione predefinita: 10, max: 50).
Continua in caso di errore Facoltativo Continuare l'esportazione anche se alcune risorse hanno esito negativo (impostazione predefinita: true).

Suggerimenti per l'annotazione degli strumenti:

Distruttivo Idempotente Open World Sola lettura Secret Locale richiesta

Esportare le risorse tramite query in Terraform

Genera un comando aztfexport per esportare in una configurazione Terraform le risorse di Azure che corrispondono a una query di Azure Resource Graph. Restituisce il comando e gli argomenti che l'agente deve eseguire localmente. Se aztfexport non è installato in locale, restituisce invece le istruzioni di installazione.

Alcuni prompt di esempio includono:

  • Esporta per tipo: "Esporta tutti gli account di archiviazione in Terraform"
  • Esporta per query: "Esporta le risorse con tipo =~ 'Microsoft.Web/sites' in Terraform"
  • Output personalizzato: "Esportare tutte le VM in Terraform nella cartella 'infra-output'"

Impostare questa opzione su false per esportazioni autorevoli — quando true, l'esportazione potrebbe essere completata con risorse saltate o un'infrastruttura come codice incompleta.

Parametro Obbligatorio o facoltativo Descrizione
Query Obbligatorio Azure Resource Graph clausola KQL WHERE per selezionare le risorse per l'esportazione, ad esempio type =~ 'Microsoft.Storage/storageAccounts'.
Cartella di output Facoltativo Nome della cartella di output per i file Terraform generati. Nessun valore predefinito: lo strumento richiede un percorso quando viene omesso.
Provider Facoltativo Provider Terraform da usare: azurerm (impostazione predefinita) o azapi.
Modello di nome Facoltativo Modello per la denominazione delle risorse nella configurazione di Terraform generata.
Includi assegnazione di ruolo Facoltativo Includere le assegnazioni di ruolo nell'esportazione.
Parallelism Facoltativo Numero di operazioni parallele (impostazione predefinita: 10, max: 50).
Continua in caso di errore Facoltativo Continuare l'esportazione anche se alcune risorse hanno esito negativo (impostazione predefinita: true).

Suggerimenti per l'annotazione degli strumenti:

Distruttivo Idempotente Open World Sola lettura Secret Locale richiesta

Convalida l'area di lavoro Terraform rispetto ai criteri

Genera un comando conftest per convalidare i file di Terraform .tf in un'area di lavoro rispetto ai criteri di Azure. Restituisce il comando e gli argomenti che l'agente deve eseguire localmente. Usa la libreria dei criteri di Azure (policy-library-avm) per la convalida con set di criteri configurabili. Se conftest non è installato in locale, restituisce invece le istruzioni di installazione.

Alcuni prompt di esempio includono:

  • Convalida area di lavoro: "Convalida la mia area di lavoro Terraform rispetto ai criteri di Azure"
  • Set di criteri specifico: "Controllare i file Terraform rispetto ad Azure Proactive Resiliency Library"
  • Criteri di sicurezza: "Eseguire criteri avmsec con un filtro di gravità elevata nell'area di lavoro Terraform"
Parametro Obbligatorio o facoltativo Descrizione
Cartella dell'area di lavoro Obbligatorio Percorso della cartella del workspace di Terraform contenente i file .tf da validare.
Set di criteri Facoltativo Set di criteri da usare per la convalida: all (impostazione predefinita), Azure-Proactive-Resiliency-Library-v2 o avmsec.
Filtro di gravità Facoltativo Filtro di gravità per i criteri avmsec: high, medium, lowo info. Applicabile solo quando il set di criteri è avmsec. Nessun valore predefinito: tutti i livelli di gravità sono inclusi.
Criteri personalizzati Facoltativo Elenco di percorsi di criteri personalizzati separati da virgole da includere per la convalida.

Suggerimenti per l'annotazione degli strumenti:

Distruttivo Idempotente Open World Sola lettura Secret Locale richiesta

Validare il plan di Terraform rispetto alle policy

Genera un comando conftest per convalidare un file JSON del piano Terraform rispetto ai criteri di Azure. Restituisce il comando e gli argomenti che l'agente deve eseguire localmente. Usa la libreria dei criteri di Azure (policy-library-avm) per la convalida con set di criteri configurabili. Se conftest non è installato in locale, restituisce invece le istruzioni di installazione.

Alcuni prompt di esempio includono:

  • Convalida del piano: "Convalida il mio piano Terraform in base ai criteri di Azure"
  • Controllo di resilienza: "Controlla il mio tfplan.json con Azure Proactive Resiliency Library"
  • Filtra per gravità: "Esegui criteri avmsec con gravità media sul mio piano Terraform"
Parametro Obbligatorio o facoltativo Descrizione
Cartella piani Obbligatorio Percorso della cartella contenente il file JSON del piano Terraform (tfplan.json) da convalidare.
Set di criteri Facoltativo Set di criteri da usare per la convalida: all (impostazione predefinita), Azure-Proactive-Resiliency-Library-v2 o avmsec.
Filtro di gravità Facoltativo Filtro di gravità per i criteri avmsec: high, medium, lowo info. Applicabile solo quando il set di criteri è avmsec. Nessun valore predefinito: tutti i livelli di gravità sono inclusi.
Criteri personalizzati Facoltativo Elenco di percorsi di criteri personalizzati separati da virgole da includere per la convalida.

Suggerimenti per l'annotazione degli strumenti:

Distruttivo Idempotente Open World Sola lettura Secret Locale richiesta