Utilizzo di MCP con Amazon Q Developer
Il Model Context Protocol (MCP) è uno standard aperto che abilita gli assistenti IA all’interazione con strumenti e servizi esterni. La CLI di Amazon Q Developer ora supporta MCP, consentendoti di estendere le funzionalità di Q collegandole a strumenti e servizi personalizzati.
Argomenti
Configurazione MCP
Disabilitazione di MCP per l’organizzazione
A seconda della configurazione, potresti avere la possibilità di disabilitare i server MCP per il tuo account AWS o la tua organizzazione nella console Amazon Q Developer. Ciò si applica se:
Gestisci un’organizzazione dal tuo account di gestione o utilizzi un account autonomo.
Stai utilizzando Amazon Q Developer in un IDE supportato.
Nota
Questa impostazione viene applicata sul lato client. Tieni presente che i tuoi utenti finali potrebbero aggirarla.
Per disabilitare MCP nel tuo account o nella tua organizzazione:
Apri la console Amazon Q Developer.
Seleziona Impostazioni.
In Preferenze, scegli Modifica.
Nel pop-up Modifica preferenze, attiva Model Context Protocol (MCP).
Scegli Save (Salva).
Configurazione dei server MCP con la CLI di Q
La configurazione MCP per la CLI di Amazon Q definita a livello globale viene gestita da:
~/.aws/amazonq/cli-agents
Per ulteriori informazioni, consulta la guida alla configurazione dell’agente personalizzato nel repository Github della CLI di Q
Configurazione dei server MCP con Q nell’IDE
La configurazione MCP per Amazon Q nell’IDE viene gestita da:
~/.aws/amazonq/agents/default.json
Per ulteriori informazioni, consulta Configurazione MCP per Q Developer nell’IDE.
Caricamento del server MCP
Amazon Q carica i server MCP in background, consentendoti di iniziare a interagire immediatamente senza attendere l’inizializzazione di tutti i server. Gli strumenti diventano disponibili progressivamente man mano che i rispettivi server terminano il caricamento.
Verifica dello stato del server
È possibile utilizzare il comando /tools per vedere quali server sono ancora in fase di caricamento e quali strumenti sono già disponibili.
Configurazione dell’inizializzazione del server
È possibile personalizzare il timeout di inizializzazione del server utilizzando:
$ q settings mcp.initTimeout [value]
Dove [value] rappresenta il timeout in millisecondi. Questa impostazione controlla per quanto tempo Amazon Q aspetterà l’inizializzazione dei server prima di consentirti di iniziare a interagire.
Strumenti e prompt
In questa sezione viene descritto come utilizzare gli strumenti e i prompt MCP con la CLI di Amazon Q Developer.
Comprensione degli strumenti MCP
Gli strumenti MCP sono funzioni eseguibili che i server MCP espongono alla CLI di Amazon Q Developer. Abilitano Amazon Q Developer all’esecuzione di azioni, all’elaborazione dei dati e all’interazione con sistemi esterni per tuo conto.
Ogni strumento in MCP dispone di:
-
Nome: un identificatore univoco per lo strumento
-
Descrizione: una descrizione leggibile dall’uomo della funzionalità dello strumento
-
Schema di input: uno schema JSON che definisce i parametri accettati dallo strumento
-
Annotazioni: suggerimenti opzionali sul comportamento e gli effetti dello strumento
Alla scoperta degli strumenti disponibili
Per vedere quali strumenti sono disponibili nella sessione della CLI di Q:
/tools
Questo comando visualizza tutti gli strumenti disponibili, inclusi gli strumenti integrati e quelli forniti dai server MCP.
Gli strumenti possono avere diversi livelli di autorizzazione che determinano il modo in cui vengono utilizzati:
-
Approvazione automatica: questi strumenti possono essere utilizzati senza autorizzazione esplicita per ogni invocazione
-
Richiede l’approvazione: questi strumenti richiedono l’autorizzazione esplicita dell’utente ogni volta che vengono utilizzati
-
Pericolosi: questi strumenti sono contrassegnati come potenzialmente rischiosi e richiedono un’attenta valutazione prima dell’approvazione
Utilizzo degli strumenti
È possibile utilizzare gli strumenti MCP in due modi:
-
Richieste in linguaggio naturale: descrivi semplicemente cosa desideri fare e Q determinerà quale strumento utilizzare.
-
Invocazione diretta dello strumento: puoi anche richiedere esplicitamente a Q di utilizzare uno strumento specifico.
Utilizzo dei prompt
I server MCP possono fornire dei prompt predefiniti che aiutano a guidare Q in attività specifiche:
-
Elenca i prompt disponibili:
/prompts -
Utilizza un prompt:
-
@prompt-namearg1 arg2
-
Esempio di utilizzo di un prompt con argomenti:
@fetch https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/command-line-mcp-configuration.html
Vantaggi principali
-
Estensibilità: connetti Amazon Q a strumenti specializzati per domini o flussi di lavoro specifici
-
Personalizzazione: crea strumenti personalizzati su misura per le tue esigenze specifiche
-
Integrazione dell’ecosistema: sfrutta il crescente ecosistema di strumenti compatibili con MCP
-
Standardizzazione: utilizza un protocollo coerente supportato da più assistenti IA
-
Flessibilità: MCP consente di passare da un provider LLM all’altro mantenendo le stesse integrazioni di strumenti
-
Sicurezza: mantieni i dati all’interno della tua infrastruttura con server MCP locali
Architettura MCP
L’MCP segue un’architettura client-server in cui:
-
Host MCP: programmi come la CLI di Amazon Q Developer che desidera accedere ai dati tramite MCP
-
MCP client: client di protocollo che mantengono connessioni 1:1 con i server
-
Server MCP: programmi leggeri, ciascuno dei quali presenta funzionalità specifiche tramite il Model Context Protocol standardizzato
-
Origini dati locali: file, database e servizi del computer a cui i server MCP possono accedere in modo sicuro
-
Servizi remoti: sistemi esterni disponibili su Internet (ad esempio tramite API) a cui i server MCP possono connettersi
Esempio Flussi di comunicazione MCP
User | v +------------------+ +-----------------+ +------------------+ | | | | | | | Amazon Q Dev | --> | MCP Client API | --> | MCP Server | | | | | | | +------------------+ +-----------------+ +------------------+ | v +------------------+ | | | External Service | | | +------------------+
Flusso di comunicazione tra utente, la CLI di Amazon Q Developer e servizi esterni tramite MCP
Concetti principali di MCP
Strumenti
Gli strumenti sono funzioni eseguibili che i server MCP espongono ai client. Consentono ad Amazon Q di:
-
Eseguire azioni in sistemi esterni
-
Elaborare i dati in modi specializzati
-
Interagire con API e servizi
-
Eseguire comandi per tuo conto
Gli strumenti sono definiti con un nome univoco, una descrizione, uno schema di input (utilizzando lo schema JSON) e annotazioni opzionali sul comportamento dello strumento.
Prompt
I prompt sono modelli predefiniti che aiutano a guidare Amazon Q in attività specifiche. In particolare, può:
-
Accettare argomenti dinamici
-
Includere il contesto delle risorse
-
Concatenare interazioni multiple
-
Guidare flussi di lavoro specifici
-
Apparire come elementi dell’interfaccia utente (come i comandi slash)
Risorse
Le risorse rappresentano dati che i server MCP possono fornire ad Amazon Q, ad esempio:
-
Contenuti del file
-
Record del database
-
Risposte API
-
Documentazione
-
Dati di configurazione