I modelli linguistici di grandi dimensioni (LLM) sono potenti, ma presentano due limiti principali: le loro conoscenze sono congelate al momento dell'addestramento e non possono interagire con il mondo esterno. Ciò significa che non possono accedere ai dati in tempo reale o eseguire azioni come prenotare una riunione o aggiornare la scheda di un cliente.
Il Model Context Protocol (MCP) è uno standard aperto progettato per risolvere questo problema. Introdotto da Anthropic nel novembre 2024, MCP fornisce un "linguaggio" sicuro e standardizzato per la comunicazione degli LLM con dati, applicazioni e servizi esterni. Funziona da ponte, consentendo all'AI di andare oltre la conoscenza statica e diventare un agente dinamico in grado di recuperare informazioni aggiornate e intraprendere azioni, rendendola più accurata, utile e automatizzata.
L'MCP crea una connessione bidirezionale standardizzata per le applicazioni di AI, consentendo agli LLM di connettersi facilmente a varie origini dati e strumenti. MCP si basa su concetti esistenti come l'uso degli strumenti e la chiamata di funzioni, ma li standardizza. Ciò riduce la necessità di connessioni personalizzate per ogni nuovo modello di AI e sistema esterno. Consente agli LLM di utilizzare dati attuali e reali, eseguire azioni e accedere a funzionalità specializzate non incluse nella loro formazione originale.
Il Model Context Protocol ha una struttura chiara con componenti che funzionano insieme per aiutare gli LLM e i sistemi esterni a interagire facilmente.
L'LLM è contenuto all'interno dell'host MCP, un'applicazione o un ambiente di AI come un IDE basato sull'AI o un'AI conversazionale. Questo è in genere il punto di interazione dell'utente, in cui l'host MCP utilizza l'LLM per elaborare le richieste che potrebbero richiedere dati o strumenti esterni.
Il client MCP, che si trova all'interno dell'host MCP, aiuta l'LLM e il server MCP a comunicare tra loro. Traduce le richieste dell'LLM per l'MCP e converte le risposte dell'MCP per l'LLM. Trova e utilizza anche i server MCP disponibili.
Il server MCP è il servizio esterno che fornisce contesto, dati o funzionalità all'LLM. Aiuta gli LLM a connettersi a sistemi esterni come database e servizi web, traducendo le loro risposte in un formato che l'LLM può comprendere, il che aiuta gli sviluppatori a fornire funzionalità diverse.
Il livello di trasporto utilizza messaggi JSON-RPC 2.0 per comunicare tra client e server, principalmente attraverso due metodi di trasporto:
Nella sua essenza, il Model Context Protocol consente a un LLM di richiedere l'aiuto di strumenti esterni per rispondere a una query o completare un'attività. Immagina di chiedere a un assistente AI: "Trova l'ultimo report sulle vendite nel nostro database e invialo via email al mio responsabile".
Ecco una visione semplificata di come MCP gestirebbe questa situazione:
Sia il Model Context Protocol (MCP) che la Retrieval-Augmented Generation (RAG) migliorano gli LLM con informazioni esterne, ma lo fanno in modi diversi e servono a scopi distinti. RAG trova e utilizza le informazioni per creare testo, mentre MCP è un sistema più ampio per l'interazione e l'azione.
Funzionalità | Model Context Protocol (MCP) | Retrieval-Augmented Generation (RAG) |
Obiettivo principale | Standardizza la comunicazione bidirezionale per consentire agli LLM di accedere e interagire con strumenti, origini dati e servizi esterni per eseguire azioni insieme al recupero di informazioni. | Migliora le risposte degli LLM recuperando informazioni pertinenti da una knowledge base autorevole prima di generare una risposta. |
Meccanismo | Definisce un protocollo standardizzato per le applicazioni LLM per richiamare funzioni esterne o richiedere dati strutturati da server specializzati, consentendo azioni e integrazione dinamica del contesto. | Incorpora un componente di recupero delle informazioni che utilizza la query di un utente per estrarre informazioni da una knowledge base o da un'origine dati. Queste informazioni recuperate vengono quindi aggiunte al prompt dell'LLM. |
Tipo di output | Consente agli LLM di generare chiamate strutturate per gli strumenti, ricevere risultati e quindi generare testo leggibile da persone in base a questi risultati e azioni. Può anche coinvolgere dati e funzioni in tempo reale. | Gli LLM generano risposte basate sui dati di addestramento aumentati da testo pertinente alla query proveniente da documenti esterni. Spesso si concentra sull'accuratezza dei fatti. |
Interazione | Progettato per l'interazione attiva e l'esecuzione di attività in sistemi esterni, fornendo una "grammatica" per l'utilizzo delle funzionalità esterne da parte degli LLM. | Principalmente per il recupero passivo di informazioni per informare la generazione di testo; in genere non per l'esecuzione di azioni all'interno di sistemi esterni. |
Standardizzazione | Uno standard aperto per il modo in cui le applicazioni di AI forniscono contesto agli LLM, standardizzando l'integrazione e riducendo la necessità di API personalizzate. | Una tecnica o un framework per migliorare gli LLM, ma non un protocollo universale per l'interazione con gli strumenti tra diversi fornitori o sistemi. |
Casi d'uso | Agenti di AI che eseguono attività (ad esempio, prenotazione di voli, aggiornamento del CRM, esecuzione di codice), recupero di dati in tempo reale, integrazioni avanzate. | Sistemi di risposta alle domande, chatbot che forniscono informazioni oggettive aggiornate, riepilogo di documenti, riduzione delle allucinazioni nella generazione di testo. |
Funzionalità
Model Context Protocol (MCP)
Retrieval-Augmented Generation (RAG)
Obiettivo principale
Standardizza la comunicazione bidirezionale per consentire agli LLM di accedere e interagire con strumenti, origini dati e servizi esterni per eseguire azioni insieme al recupero di informazioni.
Migliora le risposte degli LLM recuperando informazioni pertinenti da una knowledge base autorevole prima di generare una risposta.
Meccanismo
Definisce un protocollo standardizzato per le applicazioni LLM per richiamare funzioni esterne o richiedere dati strutturati da server specializzati, consentendo azioni e integrazione dinamica del contesto.
Incorpora un componente di recupero delle informazioni che utilizza la query di un utente per estrarre informazioni da una knowledge base o da un'origine dati. Queste informazioni recuperate vengono quindi aggiunte al prompt dell'LLM.
Tipo di output
Consente agli LLM di generare chiamate strutturate per gli strumenti, ricevere risultati e quindi generare testo leggibile da persone in base a questi risultati e azioni. Può anche coinvolgere dati e funzioni in tempo reale.
Gli LLM generano risposte basate sui dati di addestramento aumentati da testo pertinente alla query proveniente da documenti esterni. Spesso si concentra sull'accuratezza dei fatti.
Interazione
Progettato per l'interazione attiva e l'esecuzione di attività in sistemi esterni, fornendo una "grammatica" per l'utilizzo delle funzionalità esterne da parte degli LLM.
Principalmente per il recupero passivo di informazioni per informare la generazione di testo; in genere non per l'esecuzione di azioni all'interno di sistemi esterni.
Standardizzazione
Uno standard aperto per il modo in cui le applicazioni di AI forniscono contesto agli LLM, standardizzando l'integrazione e riducendo la necessità di API personalizzate.
Una tecnica o un framework per migliorare gli LLM, ma non un protocollo universale per l'interazione con gli strumenti tra diversi fornitori o sistemi.
Casi d'uso
Agenti di AI che eseguono attività (ad esempio, prenotazione di voli, aggiornamento del CRM, esecuzione di codice), recupero di dati in tempo reale, integrazioni avanzate.
Sistemi di risposta alle domande, chatbot che forniscono informazioni oggettive aggiornate, riepilogo di documenti, riduzione delle allucinazioni nella generazione di testo.
Model Context Protocol (protocollo di contesto del modello) offre diversi potenziali vantaggi per lo sviluppo e il deployment di applicazioni basate sull'AI, rendendo gli LLM più versatili, affidabili e capaci.
Gli LLM, per loro natura, a volte possono inventare fatti o produrre informazioni plausibili ma in definitiva errate (allucinare) perché prevedono le risposte in base ai dati di addestramento, non alle informazioni in tempo reale. Il MCP aiuta a ridurre questo problema fornendo agli LLM un modo chiaro per accedere a fonti di dati esterne e affidabili, rendendo le loro risposte più veritiere.
Questo protocollo aiuta l'AI a fare molto di più e a lavorare in autonomia. Di solito, gli LLM conoscono solo ciò su cui sono stati addestrati, che può diventare rapidamente obsoleto. Tuttavia, con MCP gli LLM possono connettersi a molti strumenti e integrazioni già pronti, come software aziendali, repository di contenuti e ambienti di sviluppo. Ciò significa che l'AI può gestire lavori più complicati che comportano l'interazione con il mondo reale, come l'aggiornamento delle informazioni sui clienti in un sistema CRM, la ricerca di eventi attuali online o l'esecuzione di calcoli speciali. Grazie al collegamento diretto a questi strumenti esterni, gli LLM non sono più solo programmi di chat, ma diventano agenti intelligenti in grado di agire in modo indipendente, il che significa che è possibile automatizzare molte più attività.
Prima di MCP, il collegamento degli LLM a diverse origini dati e strumenti esterni era più difficile, in quanto di solito richiedeva connessioni speciali o l'utilizzo di metodi specifici per ciascun fornitore. Ciò ha portato a un sistema complicato e disordinato, spesso chiamato problema "N x M", perché il numero di connessioni personalizzate necessarie cresceva molto rapidamente con ogni nuovo modello o strumento. MCP offre uno standard comune e aperto che semplifica queste connessioni, proprio come una porta USB-C semplifica il collegamento dei dispositivi. Questo metodo più semplice può ridurre i costi di sviluppo, accelerare la creazione di applicazioni di AI e creare un ambiente di AI più connesso. Gli sviluppatori possono anche passare più facilmente da un fornitore di LLM all'altro e aggiungere nuovi strumenti senza apportare modifiche importanti.
Sebbene il protocollo di contesto del modello migliori le funzionalità LLM collegandole a sistemi esterni, può anche aprire importanti considerazioni sulla sicurezza. Poiché MCP può accedere a qualsiasi dato ed eseguire potenzialmente codice tramite strumenti connessi, è essenziale una sicurezza solida.
I principi di sicurezza chiave per MCP includono:
Attenendosi a questi principi, gli sviluppatori possono sfruttare la potenza dell'MCP proteggendosi al contempo dai potenziali rischi.
L'implementazione del protocollo di contesto del modello richiede un'infrastruttura solida per ospitare l'LLM, i server MCP e le origini dati sottostanti. Una piattaforma cloud fornisce i componenti scalabili e sicuri necessari per creare una soluzione completa. Ecco come puoi affrontare la situazione:
I server MCP sono il ponte verso i tuoi strumenti esterni. A seconda delle tue esigenze, puoi scegliere:
Gran parte del valore di MCP deriva dagli strumenti a cui può accedere. Puoi connettere il tuo LLM a:
Una piattaforma di AI unificata è essenziale per tenere insieme tutti gli elementi. Vertex AI ti aiuta a gestire l'intero ciclo di vita della tua applicazione basata su MCP:
Inizia a creare su Google Cloud con 300 $ di crediti gratuiti e oltre 20 prodotti Always Free.