Tecnologie

MCP 2026: cos’è, come funziona e creare un server

MCP collega agenti AI, dati e strumenti con uno standard comune. Ecco come funziona nel 2026, cosa cambia con la spec stateless e come provarlo in sicurezza.

Cosmin-Anton Mihoc
8 min di lettura
MCP 2026: cos’è, come funziona e creare un server
Indice dei contenuti (9 sezioni)

Aggiornato ad agosto 2026. Il Model Context Protocol, o MCP, è lo standard aperto che permette a un assistente AI di usare strumenti e dati esterni senza costruire un’integrazione diversa per ogni applicazione. Nel 2026 non è più soltanto “il protocollo di Anthropic”: è un progetto della Agentic AI Foundation sotto la Linux Foundation e la specifica del 28 luglio ha ridisegnato il nucleo per renderlo stateless.

La risposta breve è questa: MCP non sostituisce le API. Le rende disponibili agli agenti attraverso un’interfaccia comune, descritta in modo che client e modelli possano scoprire strumenti, risorse e prompt. Il vantaggio è l’interoperabilità; il rischio è concedere a un agente più permessi del necessario.

Cos’è MCP e a cosa serve davvero

MCP è un protocollo aperto basato su JSON-RPC. Collega un’applicazione che ospita un modello — per esempio un IDE o un assistente desktop — a server che espongono capacità e informazioni.

Un server MCP può consentire all’agente di interrogare un database, leggere documenti autorizzati, chiamare un gestionale oppure avviare un’azione. Non “contiene” il modello e non rende intelligente un’API: standardizza il dialogo tra l’applicazione AI e il sistema esterno.

  • Tools: azioni invocabili, come cercare un ordine o creare un ticket.
  • Resources: dati leggibili identificati da URI, come documenti o schemi.
  • Prompts: modelli di istruzioni riutilizzabili esposti dal server.

La specifica 2026 aggiunge inoltre un sistema di estensioni. Funzioni come interfacce incorporate e attività lunghe possono evolvere senza appesantire il nucleo. Per l’aspetto visuale trovi un approfondimento dedicato alle MCP Apps.

Come funziona: host, client e server MCP

L’architettura si capisce separando tre ruoli:

  • Host: l’applicazione usata dalla persona. Gestisce modello, autorizzazioni e conversazione.
  • Client MCP: il componente dell’host che comunica con un server.
  • Server MCP: il processo che pubblica tools, resources e prompts.

Quando chiedi “controlla lo stato dell’ordine 123”, l’host decide se proporre uno strumento. Il client invia al server una richiesta strutturata; il server valida l’input, interroga il sistema autorizzato e restituisce un risultato. Il modello usa quel risultato per formulare la risposta. Le operazioni sensibili dovrebbero richiedere consenso esplicito.

stdio o Streamable HTTP?

stdio usa input e output standard tra processi locali. È semplice, adatto a strumenti avviati direttamente dal client e non richiede una porta di rete.

Streamable HTTP espone un endpoint HTTP e si adatta a server remoti o condivisi. Nella revisione 2026-07-28 ogni messaggio viaggia con una POST; la risposta è un oggetto JSON oppure uno stream SSE limitato a quella richiesta. Il vecchio trasporto HTTP+SSE resta un tema di compatibilità, non la scelta per un nuovo progetto.

Cosa cambia con MCP 2026-07-28

La novità principale è un core stateless. La specifica ha rimosso l’handshake initialize, le sessioni a livello di protocollo e l’header Mcp-Session-Id. Versione, capacità e informazioni del client vengono comunicate nei metadati delle richieste.

“Stateless” non significa che un’applicazione non possa conservare stato. Significa che il protocollo non lega più la conversazione a una sessione implicita: se serve continuità, il server crea un identificatore esplicito e il client lo rimanda come normale argomento. Questo rende richieste, bilanciamento e retry più leggibili, ma richiede una migrazione consapevole.

La revisione introduce anche estensioni formali, rafforza l’autorizzazione e modifica alcune funzioni server-client. Per evitare di sovrapporre due contenuti, qui restiamo sull’uso quotidiano: la checklist delle incompatibilità è nell’analisi MCP 2026-07-28: cosa si rompe e come migrare.

Creare un server MCP sicuro in Python

Per un primo test conviene usare l’SDK Python ufficiale e uno strumento innocuo. Servono Python 3.10 o successivo e un ambiente virtuale.

python -m venv .venv
source .venv/bin/activate
pip install "mcp[cli]"

Salva questo esempio come server.py:

from mcp.server.fastmcp import FastMCP

mcp = FastMCP("Calcoli locali")

@mcp.tool()
def calcola_preventivo(ore: float, tariffa: float) -> dict:
    """Calcola imponibile e IVA senza eseguire pagamenti."""
    if ore < 0 or tariffa < 0:
        raise ValueError("Ore e tariffa devono essere positive")

    imponibile = round(ore * tariffa, 2)
    iva = round(imponibile * 0.22, 2)
    return {
        "imponibile": imponibile,
        "iva": iva,
        "totale": round(imponibile + iva, 2),
    }

if __name__ == "__main__":
    mcp.run(transport="stdio")

Questo esempio ha un confine chiaro: calcola valori e non legge file, non usa credenziali e non modifica sistemi. È un punto di partenza migliore dei tutorial che accettano un percorso assoluto e permettono al modello di aprire qualunque file del computer.

Prima di collegarlo a un client, usa l’Inspector ufficiale o i test dell’SDK per verificare schema, input errati e risultati. Poi configura il client affinché avvii l’interprete dell’ambiente virtuale con il percorso assoluto di server.py. La forma esatta del file di configurazione cambia tra host: va controllata nella documentazione del client scelto.

MCP vs API, function calling, RAG e Skill

MCP e API

Un’API definisce come parlare con un servizio specifico. MCP definisce come un’applicazione AI scopre e usa capacità provenienti da molti servizi. Spesso un server MCP è un adattatore davanti a una o più API esistenti.

MCP e function calling

Il function calling descrive al modello una funzione disponibile in una singola applicazione. MCP aggiunge discovery, trasporti e primitive condivise, così la stessa integrazione può essere riutilizzata da host compatibili.

MCP e RAG

Il RAG recupera contenuti per arricchire il contesto prima della risposta. MCP può esporre il motore di ricerca o le fonti come risorse e strumenti, ma non stabilisce come indicizzare documenti, creare embedding o ordinare i risultati.

MCP e Skill

Una Skill è una procedura riutilizzabile: istruzioni, convenzioni e talvolta script che guidano l’agente. MCP è il canale standard con cui l’agente accede a dati e azioni. In pratica una Skill può spiegare quando e come usare un tool MCP. Se lavori con Claude Code, la guida alle skill da installare davvero chiarisce anche la differenza con plugin e comandi.

MCP è sicuro? I controlli che contano

MCP non rende automaticamente sicuro un server. Standardizza lo scambio, mentre autenticazione, autorizzazione e validazione restano responsabilità di chi costruisce host e integrazione.

  • Minimo privilegio: usa account e token dedicati con il minor numero di permessi.
  • Consenso prima delle scritture: separa lettura e modifica; conferma eliminazioni, invii e pagamenti.
  • Input non attendibili: valida percorsi, URL, query e dimensioni. Blocca path traversal e SSRF.
  • Output non attendibili: considera descrizioni dei tool e dati remoti come contenuto potenzialmente ostile.
  • Origine verificata: controlla repository, maintainer, dipendenze e aggiornamenti prima di installare un server.
  • Isolamento: esegui componenti sconosciuti in container o account separati, senza accesso alla home directory.
  • Log e revoca: registra le azioni importanti e rendi semplice revocare token e connessioni.

La query Google “come restare al sicuro sui server MCP” sta già generando impression: il consiglio più utile è non confondere la comodità del collegamento con l’affidabilità del software collegato. Un server MCP di terze parti è codice con privilegi, non un semplice prompt.

Quando conviene usare MCP

MCP è una buona scelta quando più assistenti devono usare gli stessi strumenti, quando vuoi separare l’interfaccia AI dalla logica applicativa o quando un’integrazione deve offrire discovery e schemi coerenti.

Una chiamata API diretta resta più semplice per una sola funzione interna e un solo client. Evita MCP anche se il processo non può tollerare decisioni probabilistiche: in quel caso l’AI può preparare i dati, ma l’azione critica va affidata a regole deterministiche e approvazioni umane.

Domande frequenti sul Model Context Protocol

Che cos’è un server MCP?

È un programma che espone strumenti, risorse o prompt a client compatibili con il Model Context Protocol. Può funzionare in locale tramite stdio oppure su rete tramite Streamable HTTP.

ChatGPT usa MCP?

Alcuni prodotti e strumenti OpenAI possono collegarsi a server MCP, ma il supporto dipende dal prodotto, dal piano e dal tipo di server. Non basta dire “ChatGPT” in generale: verifica sempre la documentazione aggiornata del client che intendi usare.

MCP sostituisce RAG?

No. RAG è una strategia per recuperare conoscenza; MCP è un protocollo di integrazione. Un sistema RAG può essere esposto attraverso MCP.

Un server MCP può essere pericoloso?

Sì, se riceve permessi eccessivi o contiene codice malevolo. Verifica la provenienza, limita credenziali e cartelle accessibili e richiedi conferma per azioni irreversibili.

La specifica 2026 è compatibile con i server precedenti?

Non automaticamente in ogni dettaglio. La rimozione di handshake e sessioni richiede che client e server negozino correttamente la versione. Per sistemi esistenti va pianificata una migrazione e mantenuta la compatibilità necessaria.

Il punto: standard comune, permessi stretti

MCP nel 2026 è un’infrastruttura concreta per collegare agenti, dati e applicazioni. La revisione stateless migliora la distribuzione su HTTP, ma non elimina il lavoro di progettazione: strumenti piccoli, schemi chiari, autorizzazioni minime e conferme umane restano la parte decisiva.

Se vuoi integrare un agente con dati aziendali o una web app senza esporre l’intero sistema, posso aiutarti a progettare un server con confini verificabili: descrivimi il flusso e i permessi necessari.

Condividi questo articolo
Hai domande? Contattami

Pronto a dare vita al tuo progetto?

Contattami per discutere della tua idea e ricevere una consulenza gratuita.

Iniziamo insieme