MCP spiegato: cosa collega, cosa non fa e dove si colloca

Il Model Context Protocol (MCP) è un protocollo aperto per collegare applicazioni di intelligenza artificiale a capacità e informazioni esterne tramite contratti client-server standardizzati. Un server MCP può esporre strumenti, risorse e prompt; un host o client compatibile con MCP scopre e utilizza tali capacità per conto di un'applicazione di intelligenza artificiale. MCP non richiede che il server esegua un proprio modello linguistico e non sostituisce il runtime dell'agente, l'autorizzazione aziendale, l'isolamento dei tenant, le API applicative o l'architettura di dominio sottostante alle capacità esposte.
Cosa standardizza realmente MCP
Prima di MCP, ogni applicazione di intelligenza artificiale poteva integrare sistemi esterni tramite il proprio schema di strumenti, formato di plugin, convenzione di autenticazione e codice di connessione. Lo stesso servizio poteva richiedere adattatori diversi per un client AI desktop, un agente IDE e un'applicazione personalizzata.
MCP crea un confine di protocollo riutilizzabile. Il sistema esterno espone capacità tramite un server MCP, mentre gli host AI compatibili implementano un client MCP. Ciò riduce l'accoppiamento di integrazione tra l'applicazione di intelligenza artificiale e il fornitore di strumenti o dati sottostante.
Il protocollo non standardizza l'intera applicazione. Standardizza il modo in cui le capacità vengono descritte, scoperte e invocate attraverso quel confine.
L'esempio più semplice
Supponiamo che un'applicazione di programmazione AI necessiti di accedere a una directory di progetto locale. Senza MCP, l'applicazione potrebbe implementare direttamente la propria integrazione con il filesystem.
Con MCP, un server per il filesystem può esporre capacità come elencare directory, leggere file approvati o scrivere all'interno di uno spazio di lavoro consentito. L'host AI si connette tramite un client MCP e presenta tali capacità al modello o al runtime dell'agente.
Il server non ha bisogno di comprendere la richiesta in linguaggio naturale dell'utente. L'host/modello decide quale capacità è utile; il server MCP esegue la richiesta strutturata secondo le proprie regole di sicurezza.
Una chiamata di strumento MCP di base
Dove si ferma l'esempio semplice
MCP non definisce come l'host sceglie uno strumento, come un agente pianifica, come viene modellato un flusso di lavoro aziendale o come dovrebbe comportarsi un oggetto di dominio come una fattura o un deployment.
Un protocollo può rendere l'integrazione interoperabile mentre l'applicazione sottostante rimane errata, insicura o mal progettata. Una richiesta MCP perfettamente valida può comunque chiamare la capacità aziendale sbagliata.
Il confine centrale è: MCP standardizza la semantica dell'integrazione, non la verità dell'applicazione o la correttezza aziendale.
L'architettura MCP: host, client e server
| Componente | Responsabilità |
|---|---|
| Host AI | Applicazione o runtime AI rivolto all'utente che possiede l'interazione con il modello, il contesto e il flusso di lavoro complessivo |
| Client MCP | Componente lato protocollo utilizzato dall'host per comunicare con un server MCP |
| Server MCP | Pubblica capacità e gestisce le richieste MCP |
| Sistema sottostante | Applicazione, API, database, filesystem, piattaforma SaaS o servizio dietro il server MCP |
| Modello | Sceglie o ragiona sulle capacità in base al design dell'host/runtime; non è necessariamente all'interno del server MCP |
| Autorizzazione/policy aziendale | Determina se un'operazione richiesta è effettivamente consentita |
Un host può connettersi a più server MCP, e un server MCP può interfacciarsi con uno o più sistemi sottostanti. L'host rimane responsabile dell'integrazione dei risultati MCP nell'applicazione AI più ampia.
Il server può essere locale all'host, essere eseguito come processo separato o essere remoto tramite un trasporto di rete. La topologia di hosting e la posizione del modello sono decisioni indipendenti.
Le tre primitive principali del server
Strumenti, risorse e prompt risolvono esigenze diverse
| Strumenti | Risorse | Prompt | |
|---|---|---|---|
| Scopo principale | |||
| Interazione tipica | |||
| Esempio | |||
| Rischio tipico |
Strumenti: capacità richiamabili
Gli strumenti sono operazioni strutturate che un server MCP rende disponibili all'host. Uno strumento ha un nome, una descrizione e uno schema di input; le implementazioni moderne possono anche fornire output strutturato.
Gli esempi includono la ricerca in un repository, la lettura di un record cliente, la creazione di un ticket, l'esecuzione di una build o l'invio di un messaggio. Gli strumenti possono essere di sola lettura o avere effetti collaterali.
Una buona superficie di strumenti MCP dovrebbe rappresentare obiettivi coerenti dell'utente o dell'agente piuttosto che rispecchiare meccanicamente ogni endpoint API interno. Le operazioni con permessi diversi, requisiti di conferma o raggio d'azione dovrebbero di solito essere strumenti separati.
Risorse: contesto e dati leggibili
Le risorse espongono dati o contenuti che un client può elencare o leggere. Si adattano naturalmente quando l'operazione semantica è "dammi questo artefatto o informazione" piuttosto che "esegui questa azione".
Un URI di risorsa non è una concessione di autorizzazione. Il server possiede comunque il controllo degli accessi e deve verificare quale principale può leggere l'oggetto sottostante.
La revisione del protocollo 2026-07-28 aggiunge semantiche di cache per le risposte di elenco e lettura delle risorse, inclusi freschezza e ambito della cache, rendendo il comportamento di caching più esplicito.
Prompt: modelli riutilizzabili
I prompt MCP consentono a un server di pubblicare modelli di prompt riutilizzabili ai client compatibili. Questo può mantenere le istruzioni specifiche del dominio vicine al fornitore della capacità.
Un prompt fornito da un server MCP non supera automaticamente le istruzioni di sistema o di sicurezza dell'host. L'host decide come il materiale del prompt entra nella sua gerarchia di contesto.
Il contenuto dei prompt fornito dal protocollo dovrebbe quindi essere trattato come dati di capacità con semantiche di fiducia esplicite, non come autorità di istruzione illimitata.
Strumento o risorsa?
| Esigenza | Preferire |
|---|---|
| Eseguire un'azione con argomenti strutturati | Strumento |
| Leggere un artefatto stabile specifico | Risorsa |
| Cercare o calcolare dinamicamente | Di solito strumento |
| Modificare lo stato esterno | Strumento |
| Confezionare istruzioni di prompt riutilizzabili | Prompt |
| Esecuzione asincrona di lunga durata | Strumento più gestione di attività applicativa/runtime o un'estensione MCP |
Dove si trova il modello di IA?
MCP non richiede che il modello venga eseguito sul server MCP. Il modello può essere ospitato nel cloud, ospitato localmente, incorporato nell'applicazione desktop o raggiunto tramite un altro fornitore.
L'host normalmente possiede l'interazione con il modello. Il server MCP espone capacità esterne. Un server MCP locale può quindi essere utilizzato da un host il cui modello viene eseguito nel cloud, e un server MCP remoto può essere utilizzato da un host il cui modello viene eseguito localmente.
Se il server MCP stesso chiama internamente un LLM, quel modello fa parte dell'implementazione del server dietro il confine del protocollo; non è richiesto da MCP.
MCP non sostituisce le API
Un server MCP spesso avvolge API o servizi esistenti. REST, GraphQL, SQL, chiamate SDK e contratti di servizio interni possono rimanere esattamente dove sono.
MCP aggiunge uno strato di interoperabilità rivolto all'IA. L'API di dominio sottostante può rimanere il contratto applicativo autorevole per i normali client deterministici.
L'architettura usuale è quindi prima API/servizio, poi capacità selezionate rivolte all'IA — non “sostituire ogni API con MCP”.
MCP vs function calling
Function calling e MCP sono correlati ma non identici
| Function calling | MCP | |
|---|---|---|
| Ambito | ||
| Definizione dello strumento | ||
| Portabilità | ||
| Possono coesistere? |
OpenAI attualmente espone i server MCP remoti come un tipo di strumento insieme al normale function calling, alla ricerca web, alla shell e ad altri strumenti. Tale implementazione illustra la relazione architetturale: la connettività MCP e l'interfaccia di chiamata agli strumenti del modello possono essere composte.
MCP non crea il ciclo dell'agente
Un agente di IA necessita di un runtime in grado di decidere, invocare strumenti, osservare i risultati, aggiornare lo stato e continuare o fermarsi. MCP può fornire alcuni degli strumenti e dei dati utilizzati da quel ciclo.
Il server MCP non diventa automaticamente il pianificatore, il sistema di memoria o l'orchestratore. Tali responsabilità normalmente rimangono nell'host o nel runtime dell'agente.
Un'applicazione non agentica può anche utilizzare MCP. Una singola chiamata deterministica a uno strumento MCP non richiede un agente autonomo a più passaggi.
MCP vs A2A
MCP collega principalmente un host o agente AI a capacità come strumenti, risorse e dati. A2A è finalizzato alla collaborazione tra sistemi di agenti indipendenti.
Un agente remoto può utilizzare internamente MCP per raggiungere database e strumenti, esponendo al contempo un'interfaccia A2A ad altri agenti. I protocolli possono quindi essere stratificati anziché sostituiti.
L'articolo esistente sullo stack di protocolli possiede il confronto più ampio MCP/A2A/UCP/AP2/A2UI; G02 rimane la definizione canonica di MCP.
L'uso locale e remoto di MCP presenta realtà di trasporto diverse
MCP può connettersi a server locali e remoti. Le integrazioni desktop locali utilizzano comunemente trasporti a livello di processo come stdio; i server remoti utilizzano un trasporto orientato a HTTP.
La revisione del 2026-07-28 rende il nucleo del protocollo stateless. Le richieste trasportano le informazioni necessarie per la gestione del protocollo invece di dipendere dal precedente modello di sessione a livello di protocollo.
La revisione attuale colloca anche i nomi dei metodi e delle capacità negli header HTTP, in modo che gateway, WAF, rate limiter e load balancer possano instradare e misurare il traffico MCP in modo più naturale.
Perché la consapevolezza della versione di MCP è importante
| Epoca del protocollo | Caratteristica operativa |
|---|---|
| 2025-11-25 e precedenti | Ciclo di vita orientato a handshake/sessione e comportamento Streamable HTTP precedente |
| 2026-07-28 | Nucleo stateless, scoperta opzionale del server, richieste autodescrittive, header di instradamento, suggerimenti di cache, MRTR e rafforzamento dell'autorizzazione |
| Estensioni | Capacità come Tasks e MCP Apps possono avere versioni separate dal protocollo di base |
Anche la versione dell'SDK e la versione del protocollo sono cose diverse. L'attuale SDK TypeScript v2 è la linea stabile per la revisione 2026-07-28, mentre il precedente v1.x rimane una linea di manutenzione per il comportamento dell'era 2025.
La documentazione architetturale dovrebbe registrare sia la versione dell'SDK/libreria sia la revisione del protocollo laddove il comportamento di interoperabilità dipende da esse.
Cosa è cambiato in MCP 2026-07-28
| Modifica | Perché è importante |
|---|---|
| Nucleo stateless | I server remoti possono scalare dietro normali load balancer senza sessioni sticky a livello di protocollo |
| server/discover | I client possono ispezionare le capacità del server quando necessario |
| Richieste autodescrittive | La versione del protocollo e i metadati delle capacità del client viaggiano per ogni richiesta |
| Header Mcp-Method / Mcp-Name | I gateway possono instradare, misurare e applicare policy senza analizzare i corpi |
| Suggerimenti di cache | Le letture di elenchi/risorse comunicano freschezza e ambito di condivisione |
| Richieste multi-round-trip | I server possono richiedere input aggiuntivi senza il precedente modello di richiesta bidirezionale |
| Rafforzamento dell'autorizzazione | La validazione dell'emittente e il binding delle credenziali rafforzano il comportamento di autenticazione remota |
| Framework di estensioni | Tasks, MCP Apps e altre capacità possono evolvere separatamente |
Roots, sampling e logging non sono più la direzione per le nuove implementazioni
La release 2026-07-28 contrassegna roots, sampling e logging come capacità di protocollo deprecate con una finestra di compatibilità definita.
I tutorial più vecchi potrebbero ancora mostrare queste funzionalità come primitive centrali. Il nuovo lavoro di implementazione dovrebbe seguire la specifica corrente invece di copiare ciecamente i vecchi diagrammi del ciclo di vita.
La deprecazione non significa rimozione immediata. Significa che i nuovi sistemi dovrebbero evitare nuove dipendenze non necessarie da capacità da cui il protocollo si sta allontanando.
Il lavoro a lunga esecuzione non è la stessa cosa della normale invocazione di uno strumento MCP
Le operazioni a lunga esecuzione necessitano di semantiche del ciclo di vita che vadano oltre un semplice risultato immediato di uno strumento. Nell'ecosistema attuale, i Tasks sono stati spostati in un'estensione MCP dedicata.
Questo rafforza un utile principio di progettazione: il protocollo di base non ha bisogno di assorbire ogni preoccupazione relativa al runtime dell'agente.
Un'applicazione può anche mantenere interamente la proprietà del flusso di lavoro a lunga esecuzione nel proprio runtime e usare i normali strumenti MCP come operazioni sottostanti.
Le MCP Apps estendono le capacità dell'interfaccia utente senza ridefinire il protocollo principale
Le MCP Apps associano esperienze di interfaccia utente interattive più ricche agli strumenti MCP attraverso il modello di estensione.
L'host controlla ancora come quell'interfaccia utente viene incorporata, isolata e protetta.
Lo scambio di capacità principali e il rendering dell'interfaccia utente dovrebbero quindi rimanere responsabilità architetturali separate.
L'autorizzazione MCP non è il tuo modello di autorizzazione completo
MCP remoto necessita di meccanismi di autenticazione e autorizzazione a livello di protocollo affinché client e server possano stabilire un accesso affidabile. La specifica corrente continua a rafforzare il comportamento relativo a OAuth/OIDC.
Quel livello risponde alla domanda se un client è autorizzato a connettersi o a richiedere gli scope del protocollo. Non risponde automaticamente alla domanda se Alice può rimborsare l'ordine 123, se un agente può scrivere la configurazione di produzione o se il Tenant A può leggere i dati del Tenant B.
Quelle decisioni di dominio appartengono al modello di autorizzazione del server/applicazione e devono essere applicate prima di invocare l'operazione sottostante.
L'identità può attraversare diversi confini
Una richiesta MCP può coinvolgere l'applicazione client MCP, la persona che ha effettuato l'accesso, un'identità di agente/sessione e un account di servizio a valle.
Il server necessita di una policy esplicita su per conto di quale principale viene eseguita l'operazione. Altrimenti una potente credenziale di servizio può diventare un percorso di confused deputy.
Per l'uso aziendale, la correlazione tra identità utente, identità agente, connessione MCP e autorizzazione a valle è importante quanto la compatibilità del protocollo.
L'isolamento dei tenant rimane al di fuori della scoperta delle capacità MCP
Un server MCP multi-tenant deve applicare l'ambito del tenant quando legge o modifica risorse di proprietà del tenant. Restituire uno strumento chiamato search_documents non definisce a quale tenant appartengono i documenti idonei.
L'ambito del tenant dovrebbe essere derivato da un'identità o appartenenza attendibile e trasportato in database, cache, ricerca vettoriale, archiviazione di oggetti e API a valle.
Recuperare contenuti cross-tenant e chiedere al modello di non utilizzarli è già un fallimento dell'isolamento.
MCP non definisce la Fonte di Verità
Un server MCP può esporre un database, un repository di documenti, un servizio di ricerca web o un riepilogo generato dall'IA. Il protocollo non dichiara quale fonte sia autorevole per un'affermazione.
Le regole della Fonte di Verità appartengono all'architettura dell'applicazione/dominio. L'host o il server possono codificare l'autorità attraverso il design degli strumenti, i metadati, la politica di accesso o la validazione, ma MCP stesso non rende una capacità "vera".
Uno strumento può quindi essere perfettamente richiamabile tramite MCP e comunque restituire informazioni obsolete, secondarie o non autorevoli.
MCP e ingegneria del contesto
MCP può aumentare le capacità e le informazioni disponibili a un'applicazione di IA, ma l'ingegneria del contesto determina comunque ciò che raggiunge il modello.
I cataloghi di strumenti consumano contesto visibile al modello in molti host. I risultati degli strumenti possono essere grandi. Le risorse possono essere numerose. Un host necessita di selezione, filtraggio, caricamento dinamico e compattazione invece di esporre tutto ad ogni turno.
La disponibilità delle capacità e il contesto visibile al modello dovrebbero quindi essere trattati come livelli separati.
Progettare gli strumenti MCP attorno a risultati e confini di rischio
| Design debole dello strumento | Design più solido dello strumento |
|---|---|
| execute_api(method,url,body) | Strumenti di dominio ristretti con operazioni validate |
| Un unico strumento di amministrazione per tutte le azioni | Operazioni separate di lettura/scrittura/approvazione |
| API interna grezza replicata 1:1 | Contratto rivolto all'IA attorno a obiettivi utente coerenti |
| Un unico strumento filesystem ampio | Operazioni di lettura/scrittura con ambito workspace |
| Politica di sicurezza solo nella descrizione | Il server applica la politica nel codice |
| Risposta grezza illimitata | Output strutturato rilevante per le decisioni |
| Eliminazione/aggiornamento mescolati con la lettura | Strumenti separati con effetti collaterali e politica di conferma |
Le approvazioni appartengono all'architettura di esecuzione
Un host può richiedere l'approvazione dell'utente prima di invocare strumenti MCP selezionati. L'attuale integrazione MCP di OpenAI supporta modelli di esecuzione automatici o con approvazione esplicita.
L'approvazione dell'host è utile ma non dovrebbe essere l'unica protezione del server, perché un altro client MCP compatibile potrebbe utilizzare un modello di approvazione diverso.
Per azioni distruttive o con conseguenze finanziarie, usa la difesa in profondità: contratto dello strumento chiaro, approvazione a runtime dove appropriato, autorizzazione lato server, validazione di business e audit.
L'osservabilità MCP dovrebbe collegare le chiamate di protocollo alle azioni di dominio
Una traccia MCP è più utile quando può essere correlata alla chiamata applicativa sottostante, alla modifica del database o alla transazione di business.
Lo standard dell'ecosistema 2026-07-28 uniforma le convenzioni di propagazione del W3C Trace Context, rendendo più facile seguire una richiesta attraverso host, client, server e servizi a valle.
I soli log di protocollo non sono sufficienti per operazioni con conseguenze. Le prove di audit dovrebbero anche registrare il principal, il tenant, la risorsa target, l'approvazione e la conseguente modifica di stato rilevanti.
Cosa MCP non può risolvere
| Problema | Perché MCP non lo risolve |
|---|---|
| API di business scadente | MCP può esporre l'API scadente in modo più coerente |
| Dati errati | La validità del protocollo non crea correttezza fattuale |
| Isolamento dei tenant mancante | La scoperta degli strumenti non impone la proprietà delle risorse |
| Privilegi eccessivi | Uno strumento standardizzato può comunque avere privilegi eccessivi |
| Pianificazione dell'agente scadente | MCP espone le capacità; il runtime/modello sceglie comunque come usarle |
| Progettazione scadente di retry/idempotenza | Le chiamate di protocollo non rendono sicuri gli effetti collaterali |
| Nessuna fonte di verità | MCP non decide quale sistema possiede un fatto |
| Valutazione debole | L'interoperabilità non prova il successo del compito |
| Nessuna politica di audit | Le tracce di trasporto non definiscono conservazione o responsabilità |
| Disallineamento del protocollo | Versioni vecchie/nuove possono comunque richiedere migrazione o gestione della compatibilità |
Prova di implementazione originale: Aaasaasa AI Client
L'applicazione può eseguire un endpoint MCP Streamable HTTP autenticato su loopback. L'endpoint espone solo le directory selezionate tramite il broker centrale dei permessi del workspace.
L'endpoint locale e la rotta remota sono questioni separate: il connettore locale può associarsi solo al loopback, mentre un Secure MCP Tunnel può rendere il servizio MCP approvato raggiungibile da un client AI esterno autorizzato senza esporre l'intera macchina locale.
Il modello centrale dei permessi distingue profili solo chat, sola lettura, scrittura progetto e directory personalizzate. Direct Chat non ha accesso al filesystem o alla shell; i runtime degli agenti con capacità di strumenti usano il profilo di permessi selezionato.
Questa è un'implementazione diretta del confine G02: MCP fornisce la connessione standardizzata alle capacità, mentre il broker dei permessi di proprietà dell'applicazione decide quali directory il server può esporre.
| Elemento implementato | Prova architetturale |
|---|---|
| Endpoint MCP locale autenticato | Il server MCP può essere un servizio di capacità deterministico locale |
| Binding su loopback | Esposizione di rete e capacità del protocollo sono decisioni separate |
| Integrazione Secure MCP Tunnel | MCP privato/locale può essere collegato tramite una rotta controllata |
| Broker centrale dei permessi | La capacità MCP è vincolata dalla politica dell'applicazione |
| Ambito delle directory selezionate | La visibilità del filesystem è esplicitamente limitata |
| Direct Chat senza strumenti OS | L'accesso al modello non implica automaticamente l'accesso agli strumenti |
Quando MCP è adatto
| MCP è altamente adatto quando | Un'integrazione diretta può essere più semplice quando |
|---|---|
| La stessa capacità dovrebbe essere riutilizzabile su più host AI | Una sola applicazione possiede entrambi i lati e la portabilità ha poco valore |
| Un sistema esterno vuole pubblicare strumenti/risorse scopribili rivolti all'AI | Una singola chiamata API interna stabile è sufficiente |
| Vuoi un confine standard attorno a strumenti/dati locali | Non c'è alcun requisito di interoperabilità rivolto all'AI |
| Fornitori di strumenti e client AI evolvono indipendentemente | L'integrazione è intenzionalmente privata e strettamente accoppiata |
| Vuoi una scoperta delle capacità compatibile con l'ecosistema | L'insieme di capacità è minuscolo e fisso nel codice dell'applicazione |
Quando non hai bisogno di MCP
Non aggiungere MCP solo perché l'applicazione utilizza l'IA. Se il tuo backend chiama già una singola API interna e nessun client MCP indipendente necessita di quella capacità, una normale chiamata a funzione o a servizio può essere più chiara.
MCP aggiunge valore a un confine di interoperabilità. Senza quel confine, il protocollo può diventare uno strato adattatore non necessario.
La domanda architetturale non è "Questo progetto ha l'IA?" ma "Host IA e fornitori di capacità che evolvono in modo indipendente traggono beneficio da un contratto standard?"
Checklist di sicurezza MCP
| Confine | Domanda |
|---|---|
| Identità del server | A quale server MCP sono effettivamente connesso? |
| Identità del client | Quale applicazione/client sta richiedendo l'accesso? |
| Identità dell'utente finale | Per conto di chi viene eseguita l'operazione? |
| Allowlist degli strumenti | Quali capacità può scoprire e chiamare questo host/agente? |
| Autorizzazione business | Questo principale può eseguire questa operazione? |
| Ambito tenant | Quale confine di tenant/risorsa si applica? |
| Isolamento delle credenziali | Le credenziali sono associate correttamente e mantenute al di fuori del contesto del modello? |
| Approvazione | Quali effetti collaterali richiedono conferma umana? |
| Validazione dell'input | Gli argomenti degli strumenti sono validati indipendentemente dall'output del modello? |
| Fiducia nell'output | Il contenuto restituito può contenere istruzioni non attendibili o dati sensibili? |
| Esposizione di rete | Un server locale è accidentalmente esposto oltre le interfacce previste? |
| Audit | Una chiamata al protocollo può essere correlata all'azione a valle? |
Idee sbagliate comuni
| Idea sbagliata | Correzione |
|---|---|
| "Un server MCP è un server IA." | Può essere un normale software deterministico che espone capacità. |
| "Ho bisogno del mio LLM sul server MCP." | No. Il modello può risiedere interamente sul lato host. |
| "MCP sostituisce le API REST." | MCP spesso avvolge API esistenti per l'interoperabilità rivolta all'IA. |
| "MCP è un framework per agenti." | MCP fornisce capacità; un runtime per agenti gestisce iterazione e stato. |
| "MCP e function calling competono." | Un host può collegare le capacità MCP alla propria interfaccia di strumenti del modello. |
| "MCP sostituisce A2A." | MCP si concentra sull'integrazione delle capacità; A2A si concentra sulla collaborazione tra agenti. |
| "Se uno strumento è elencato, l'utente può chiamarlo." | La scoperta non è autorizzazione. |
| "OAuth risolve i permessi business." | L'autorizzazione alla connessione non sostituisce l'autorizzazione di dominio o l'isolamento dei tenant. |
| "MCP locale significa IA locale." | La posizione del server degli strumenti e la posizione dell'inferenza sono indipendenti. |
| "MCP rende affidabile l'output degli strumenti." | Qualità dei dati, autorità e provenienza appartengono comunque alla fonte/applicazione. |
| "Un unico strumento generico gigante è flessibile." | Strumenti troppo ampi indeboliscono permessi, validazione e osservabilità. |
| "I vecchi tutorial sono aggiornati all'implementazione." | La revisione 2026-07-28 ha modificato sostanzialmente il ciclo di vita e il comportamento del trasporto. |
Una sequenza pratica di progettazione MCP
Progetta il confine prima di implementare il server
Checklist di architettura MCP
| Domanda | Risposta attesa |
|---|---|
| Perché è necessario MCP? | Un reale confine di interoperabilità rivolto all'IA |
| Cosa espone il server? | Strumenti/risorse/prompt espliciti |
| Dove viene eseguito il modello? | Decisione indipendente di host/fornitore |
| Dove viene eseguita l'esecuzione degli strumenti? | Posizione nominata di server/runtime |
| Quale revisione del protocollo è prevista? | Contratto consapevole della versione |
| Chi è il principale richiedente? | Modello di identità client/utente/agente |
| Quali strumenti possono essere scoperti? | Politica di allowlist/capacità |
| Quali operazioni possono essere eseguite? | Autorizzazione business lato server |
| Come viene applicato l'ambito tenant/risorsa? | Controlli attendibili di proprietà tenant/risorsa |
| Quali azioni richiedono approvazione? | Politica di conferma basata sul rischio |
| Come sono protette le credenziali? | Archiviazione runtime attendibile, segreti non visibili al modello |
| Come viene limitato l'output? | Contratto di risultato rilevante strutturato |
| Come vengono tracciate le chiamate? | Correlazione attraverso MCP fino all'azione a valle |
| Cosa succede se MCP non è disponibile? | Comportamento di fallback/errore definito |
| Un altro host compatibile può usarlo? | Portabilità validata dove richiesto |
Casi limite e limitazioni
Un server MCP stdio locale può avere una scarsa esposizione di rete pur essendo pericoloso se il processo stesso ha permessi eccessivi sul filesystem o sulla shell.
Un server MCP remoto può esporre solo documentazione pubblica o azioni aziendali altamente sensibili. "MCP remoto" dice poco sul rischio senza il contesto di capacità e autorizzazione.
Alcuni server possono usare solo strumenti e ignorare risorse/prompt. La compatibilità MCP non richiede che ogni primitiva opzionale sia ugualmente importante.
Un host può tradurre tra il proprio modello interno di strumenti e MCP. Gli utenti potrebbero non vedere mai direttamente il confine del protocollo, il che è accettabile se sicurezza e attribuzione rimangono chiare.
MCP continua a evolversi rapidamente. Estensioni, pattern di autorizzazione, API degli SDK e convenzioni dell'ecosistema possono cambiare più velocemente della distinzione architetturale principale.
Cosa cambierebbe questa risposta?
Le future revisioni di MCP possono modificare ciclo di vita, trasporti, autorizzazione e meccanismi di estensione. La revisione di luglio 2026 dimostra già perché le affermazioni specifiche di un'implementazione devono essere datate.
Il confine canonico cambierebbe solo se MCP si espandesse da protocollo di interoperabilità a standard di architettura end-to-end per applicazioni/agenti. Non è ciò che definisce il protocollo attuale.
Per il lavoro di implementazione, verificare sempre la specifica corrente e la linea SDK esatta invece di copiare esempi sensibili alla versione da tutorial più vecchi.
Conoscenza canonica correlata
MCP si colloca a valle dell'Agentic AI: prima comprendere il confine agente/runtime/strumento, poi usare MCP quando le capacità esterne necessitano di un contratto di protocollo portabile.
MCP dipende anche da RBAC e isolamento dei tenant perché l'esposizione delle capacità a livello di protocollo non determina l'autorizzazione dell'applicazione.
L'articolo più ampio sullo stack di protocolli spiega dove si colloca MCP accanto ad A2A, UCP, AP2 e A2UI. G02 rimane la fonte canonica per MCP stesso.
Domande frequenti
FAQ sul Model Context Protocol
Cos'è MCP?
Un server MCP ha bisogno di un modello AI?
Qual è la differenza tra un client e un server MCP?
MCP sostituisce il function calling?
MCP sostituisce le API REST?
MCP è un framework per agenti?
Qual è la differenza tra MCP e A2A?
MCP gestisce l'autorizzazione?
MCP può funzionare con modelli locali?
Qual è la versione attuale della specifica MCP?
Glossario
Termini chiave di MCP
- MCP
- Model Context Protocol, un protocollo aperto per connessioni interoperabili tra host/client AI e server di capacità esterni.
- MCP host
- L'applicazione o il runtime AI che possiede l'interazione con il modello e utilizza i client MCP per connettersi ai server.
- MCP client
- Componente del protocollo lato host che comunica con un server MCP.
- MCP server
- Fornitore di capacità che implementa MCP ed espone strumenti, risorse, prompt o estensioni supportate.
- Strumento
- Capacità strutturata richiamabile esposta da un server MCP.
- Risorsa
- Dati o contenuti leggibili esposti tramite i metodi delle risorse MCP.
- Prompt
- Modello di prompt riutilizzabile esposto da un server MCP per host compatibili.
- Streamable HTTP
- Trasporto MCP orientato a HTTP utilizzato per la comunicazione con server remoti/in rete.
- stdio
- Trasporto standard input/output di processo comunemente usato per integrazioni locali di server MCP.
- server/discover
- Metodo MCP moderno che consente a un client di ispezionare le capacità del server nell'era del protocollo 2026-07-28.
- MRTR
- Multi Round-Trip Requests, un meccanismo per ottenere input aggiuntivi durante una richiesta nell'era del protocollo 2026-07-28.
- Estensione MCP
- Capacità che si compone con il protocollo di base e può evolvere/versionarsi separatamente, come Tasks o MCP Apps.
Conclusione
MCP è più facile da comprendere quando il suo confine rimane ristretto: collega applicazioni AI a capacità esterne tramite un protocollo standard.
Il modello non deve risiedere sul server MCP. Il server non diventa il runtime dell'agente. Uno strumento elencato non diventa un'azione aziendale autorizzata. E MCP non sostituisce l'API sottostante, la fonte di verità, l'isolamento dei tenant o l'architettura di dominio.
Questa ristrettezza è la forza del protocollo. MCP può standardizzare il modo in cui i sistemi AI raggiungono strumenti e dati, lasciando la proprietà dell'applicazione, la sicurezza, la semantica di business e la scelta del modello ai livelli che ne sono effettivamente responsabili.
Fonti primarie e documentazione corrente
MCP si evolve rapidamente, quindi le affermazioni sensibili alla versione in questo articolo sono legate allo stato dell'8 ottobre 2026. La sezione Aaasaasa AI Client è una prova di implementazione originale ed è esplicitamente limitata all'ambito verificato del connettore MCP e del broker di permessi.
Model Context Protocol — TypeScript SDK v2Documentazione attuale dell'SDK TypeScript stabile che implementa la specifica MCP 2026-07-28 e le primitive server/client.
Model Context Protocol — Rilascio della specifica 2026-07-28Spiegazione ufficiale del rilascio per l'attuale revisione del protocollo MCP, inclusi core stateless, MRTR, routing, caching, rafforzamento dell'autorizzazione, estensioni e deprecazioni.
MCP TypeScript SDK — Supporto alla revisione del protocollo 2026-07-28Guida all'implementazione specifica per versione per l'attuale revisione del protocollo e la compatibilità con l'era precedente.
OpenAI — Server MCPGuida attuale di OpenAI per connettere i modelli a server MCP remoti e server MCP locali/privati tramite Secure MCP Tunnel.
OpenAI — Connessioni MCP per Agents APIGuida attuale alle connessioni MCP che copre le posizioni service, environment e stdio oltre ai controlli degli strumenti consentiti.
OpenAI — StrumentiPanoramica attuale che colloca i server MCP remoti accanto a function calling, ricerca web, shell e altri strumenti del modello.
OpenAI — Concetto di server MCPDescrizione attuale dei server MCP che espongono strumenti, risorse e prompt per integrazioni con servizi esterni.
Related Articles

La GPU non è il prodotto: architettura di IA privata a prova di futuro
L'infrastruttura di IA privata non dovrebbe essere progettata attorno a una sola GPU o a un solo modello. Un approccio più resiliente combina GPU veloci per l'inferenza, sistemi di IA ricchi di memoria, nodi di IA fisica e modelli cloud di frontiera opzionali dietro un livello di routing consapevole delle capacità.

Architettura Multi-Tenant di Livello Enterprise per una Piattaforma Internazionale
Loving Rocks è una piattaforma per matrimoni di livello enterprise progettata con una vera architettura multi-tenant, database isolati per tenant e internazionalizzazione integrata per scalabilità globale, sicurezza e stabilità operativa a lungo termine.

Cosa dovrebbe ricordare, dimenticare, ricalcolare o recuperare di nuovo un agente IA?
Gli agenti a lunga esecuzione non dovrebbero ricordare tutto. Questo articolo fornisce un modello pratico di ciclo di vita per decidere cosa appartiene alla memoria durevole, cosa dovrebbe essere recuperato di nuovo, cosa è più sicuro ricalcolare e cosa dovrebbe scadere o essere sostituito.

Quando dovrebbe un'IA smettere di fidarsi della propria conoscenza? — Il grilletto del recupero
Un modello di IA non necessita del recupero per ogni domanda. Il problema importante è sapere quando la sua conoscenza interna non è più sufficiente. Il Trigger di Recupero è un confine decisionale pratico che determina quando un sistema di IA dovrebbe smettere di affidarsi esclusivamente alla conoscenza del modello e ottenere prove esterne prima di rispondere.

MCP vs A2A vs UCP vs AP2 vs A2UI: Lo stack di protocolli degli agenti spiegato
MCP, A2A, UCP, AP2 e A2UI sono spesso presentati come standard per agenti concorrenti. Per lo più risolvono problemi di interoperabilità diversi. Questa guida mappa ciascun protocollo sul confine che effettivamente standardizza—e mostra come possano lavorare insieme in un unico sistema di produzione.

Che cos'è un architetto di piattaforme AI? Modelli, dati, runtime, sicurezza e operazioni
Un Architetto di Piattaforme AI progetta fondamenta AI riutilizzabili attraverso modelli, fornitori, recupero, agenti, identità, sicurezza, valutazione, osservabilità e operazioni.

IA sovrana: controllo di modelli, dati, infrastrutture e dipendenze
L'IA sovrana riguarda il controllo effettivo su modelli, dati, infrastrutture, software, operazioni e dipendenze strategiche — non semplicemente dove è ospitato un modello di IA.

La memoria dell'agente IA non è RAG: come separare memoria, recupero, stato e contesto
Memoria dell'agente, RAG, stato e contesto vengono spesso usati come se fossero intercambiabili. Non lo sono. Questo pratico modello architetturale separa i quattro livelli, mostra dove si colloca ciascuno e spiega cosa si rompe quando i sistemi li fanno collassare in uno solo.

Cos'è il RAG? La spiegazione più semplice di come funziona
RAG sembra complicato, ma l'idea è semplice: prima che un'IA risponda, cerca prima informazioni utili da una fonte di conoscenza e fornisce tali informazioni al modello linguistico. Questa guida spiega RAG, LLM, stato, memoria e strumenti utilizzando un semplice modello mentale.

RBAC vs Isolamento dei Tenant: Due Confini di Sicurezza Diversi
Il controllo RBAC stabilisce cosa può fare un utente; l'isolamento dei tenant stabilisce a quali risorse di quale tenant può accedere tale azione. Scopri perché la sicurezza SaaS multi-tenant richiede entrambi i confini.

Database vettoriali, embedding e reranking: tre parti diverse del recupero
Gli embedding rappresentano il significato, i database vettoriali recuperano i candidati e i reranker affinano i risultati. Scopri come questi tre livelli di recupero si differenziano e collaborano nel RAG.

Fonte di verità nei sistemi di IA: da dove proviene realmente la conoscenza affidabile
Una Fonte di Verità definisce quale fonte è autorevole per un fatto o uno stato specifico. Scopri come si differenzia da RAG, provenienza, memoria, contesto, database vettoriali e sistemi di registrazione.