Introduzione al Model Context Protocol e alla revisione del 28‑07‑2026

Il Model Context Protocol (MCP) è il framework che consente agli assistenti di intelligenza artificiale di interagire con strumenti esterni, come API, servizi di calcolo o database. Il 28 luglio 2026 è stata rilasciata una nuova versione della specifica, contrassegnata come revision 2026‑07‑28. Questa revisione introduce cambiamenti strutturali di grande impatto: il protocollo diventa stateless, ovvero privo di stato, e il precedente meccanismo di handshake e di identificazione della sessione viene eliminato.

Parallelamente, la specifica rafforza il modello di autenticazione basato su OAuth, il più diffuso standard per i permessi delegati, e annuncia la fine della dynamic client registration, ossia la registrazione dinamica dei client. La Provimedia GmbH, con sede a Bietigheim‑Bissingen, ha sviluppato un server MCP open‑source per la protezione della programmazione supportata da IA, e utilizza la nuova versione del protocollo nei propri prodotti.

Contesto di sicurezza: i dati della Fudan University

Una ricerca condotta dalla Fudan University nel maggio 2026 ha analizzato 7.973 server remoti raggiungibili. I risultati hanno mostrato che il 40,55 % di questi server non richiedeva alcuna forma di autenticazione per l’accesso. Questo dato ha evidenziato l’urgenza di introdurre misure più rigorose per la gestione delle credenziali e dei permessi, spingendo gli autori di MCP a rivedere la parte relativa all’autenticazione.

La revisione 2026‑07‑28 risponde a queste criticità introducendo modifiche sostanziali al flusso di login OAuth, riducendo le superfici di attacco e semplificando la gestione dei client da parte degli amministratori di sistema.

Principali cambiamenti nella gestione delle sessioni

    • Eliminazione del meccanismo di handshake iniziale (initialize / initialized).
    • Rimozione delle identificazioni di sessione dal trasporto.
    • Introduzione di una nuova chiamata server/discover per interrogare versioni e capacità supportate dal server.
    • Il client deve includere nella singola richiesta la propria versione di protocollo e le capacità operative, rendendo ogni messaggio autonomo.

Impatto sulla registrazione dei client

    • La dynamic client registration è dichiarata obsoleta e non più supportata.
    • I client devono essere registrati in modo statico, tipicamente tramite configurazioni amministrative o file di manifest.
    • Questa scelta riduce la complessità di gestione dei token e diminuisce il rischio di registrazioni non autorizzate.

Dettagli tecnici della revisione 2026‑07‑28

La specifica elenca una serie di modifiche al nucleo del protocollo, tra cui:

    • Versionamento esplicito nella richiesta: ogni messaggio HTTP (o altro trasporto supportato) deve contenere un header o un campo JSON che indica la versione del protocollo MCP in uso.
    • Capacità del client dichiarate per ogni chiamata: il client specifica le proprie capacità (ad esempio, supporto per streaming, compressione, o formati di dati) all’interno della stessa richiesta.
    • Endpoint server/discover obbligatorio: il server fornisce un elenco di versioni supportate, metodi disponibili e capacità opzionali, consentendo al client di adattarsi dinamicamente.
    • OAuth 2.0 rafforzato: la revisione richiede l’utilizzo di flussi di autorizzazione più sicuri (ad esempio, Authorization Code with PKCE) e impone la verifica dei redirect URI.
    • Deprecazione della registrazione dinamica: tutti i client devono essere pre‑registrati con un clientid statico e un clientsecret gestito in modo sicuro.

Compatibilità e coesistenza delle versioni

Dalla data di pubblicazione, almeno due generazioni del protocollo coesistono sullo stesso ecosistema. Le quattro librerie ufficiali di prima generazione – per TypeScript, Python, Go e C# – hanno ricevuto aggiornamenti che supportano simultaneamente la vecchia e la nuova modalità. Gli sviluppatori possono quindi migrare gradualmente, mantenendo la compatibilità con i server legacy finché non decidono di passare completamente alla versione stateless.

Implicazioni per gli sviluppatori di agenti IA

Le modifiche introdotte dalla revisione hanno diverse ripercussioni pratiche per i team che sviluppano agenti IA o integrazioni basate su MCP:

    • Rimozione del concetto di sessione: gli agenti non potranno più affidarsi a uno stato mantenuto dal server tra più richieste. Qualsiasi contesto deve essere gestito dal client o trasportato esplicitamente.
    • Gestione dei token OAuth: i token di accesso devono essere ottenuti e rinnovati secondo i nuovi flussi più sicuri, evitando l’uso di grant di tipo client credentials senza PKCE.
    • Registrazione statica dei client: i team devono aggiornare i propri file di configurazione per includere clientid e clientsecret pre‑registrati, e assicurarsi che questi dati siano protetti (ad esempio, tramite vault o variabili d’ambiente criptate).
    • Utilizzo di server/discover: prima di inviare richieste operative, l’agente deve interrogare il server per verificare la compatibilità delle versioni e delle capacità, riducendo il rischio di errori di incompatibilità.
    • Aggiornamento delle dipendenze: le librerie client per TypeScript, Python, Go e C# devono essere aggiornate alla versione più recente (≥ v2.0) per garantire il supporto al nuovo schema di messaggi.

Esempio di flusso di richiesta con la nuova versione

POST /api/v1/execute HTTP/1.1

Host: ai‑tool.example.com

Content-Type: application/json

MCP-Version: 2026-07-28

Client-Capabilities: {"streaming":true,"compression":"gzip"}

Authorization: Bearer <access_token>

{

"method": "run",

"params": {"task":"summarize","text":"..."}

}

In questo esempio, la versione del protocollo e le capacità del client sono incluse nell’header, eliminando la necessità di una precedente handshake.

Il ruolo di Provimedia GmbH nella diffusione del nuovo MCP

Provimedia GmbH ha pubblicato un server MCP open‑source, denominato ChainGuard, che implementa integralmente le specifiche della revisione 2026‑07‑28. Il progetto è disponibile su GitHub e include:

    • Supporto nativo per le quattro lingue di programmazione principali (TypeScript, Python, Go, C#).
    • Un modulo di autenticazione OAuth conforme ai nuovi requisiti di sicurezza.
    • Strumenti di diagnostica per verificare la corretta registrazione statica dei client.
    • Documentazione dettagliata su come migrare da versioni precedenti del protocollo.

L’azienda ha inoltre avviato una campagna di formazione rivolta a sviluppatori e team di sicurezza, con webinar e guide pratiche per la transizione verso il modello senza stato.

Conclusioni e prospettive future

La revisione 2026‑07‑28 del Model Context Protocol segna un passo decisivo verso una maggiore sicurezza e semplicità operativa nella comunicazione tra assistenti IA e strumenti esterni. Eliminando le sessioni e la registrazione dinamica dei client, il protocollo riduce la superficie di attacco, semplifica la gestione delle credenziali e incoraggia l’adozione di pratiche OAuth più robuste.

Gli sviluppatori dovranno aggiornare le proprie librerie, adattare i flussi di autenticazione e gestire il contesto delle richieste in modo esplicito. Con il supporto delle librerie ufficiali e delle soluzioni open‑source di Provimedia, la migrazione dovrebbe risultare gestibile, permettendo al contempo di sfruttare le nuove capacità di scoperta del server e di garantire una migliore interoperabilità tra le varie implementazioni.

Nel medio‑termine, si prevede che la versione stateless diventi lo standard de facto per tutti gli agenti IA, favorendo l’integrazione di nuovi servizi e la creazione di ecosistemi più sicuri e scalabili.