Sat Jun 27 2026 20:00:00 GMT-0400 (Eastern Daylight Time)

Protocollo di Contesto del Modello (MCP): Come Collega l'IA ai Tuoi Strumenti

MCP è lo standard aperto di Anthropic per collegare assistenti IA a fonti dati e strumenti. Scopri il modello client-server, il trasporto, le capacità e come eseguire server.

Protocollo di Contesto del Modello (MCP): Come Collega l'IA ai Tuoi Strumenti

Ultimo aggiornamento: June 28, 2026

MCP — Model Context Protocol — è uno standard aperto rilasciato da Anthropic alla fine del 2024 per connettere assistenti AI e agenti a fonti di dati esterne e strumenti. Invece di scrivere un'integrazione personalizzata per ogni modello e ogni strumento, si espone un singolo server MCP e qualsiasi client compatibile con MCP può utilizzarlo. La scorsa settimana ho collegato un filesystem server e un GitHub server a Claude Code e la differenza nello ciò che l'agente poteva effettivamente fare è stata immediata. Questo post copre cos'è MCP, come funziona il modello client-server, i tipi di capacità principali e come eseguire server nel proprio setup.

Risposta rapida: cos'è MCP?

MCP è un protocollo basato su JSON-RPC 2.0 che standardizza la connessione tra un'applicazione host AI (il client MCP, come Claude Desktop o Claude Code) e i server esterni che espongono dati e azioni. Un singolo server MCP può pubblicizzare tre tipi di capacità ai client:

  • Tools — funzioni che il modello può chiamare (interrogare un database, inviare un messaggio, cercare in un repository).
  • Resources — dati strutturati che il modello può leggere (contenuti dei file, risposte API, record).
  • Prompts — modelli di prompt riutilizzabili e parametrizzati che l'utente può invocare.

L'obiettivo è un "USB-C per le integrazioni AI": un server, molti client, nessun collante specifico per modello. La specifica e gli SDK sono open source e mantenuti su modelcontextprotocol su GitHub, con la documentazione canonica su modelcontextprotocol.io.

Perché esiste MCP?

Prima di MCP, ogni integrazione di strumento era un evento isolato. Se si voleva che un assistente leggesse i problemi del proprio GitHub e interrogasse anche Postgres, si scrivevano due connettori personalizzati, per poi riscriverli quando si cambiavano modelli o host. La motivazione dichiarata da Anthropic è porre fine a questa duplicazione con un protocollo condiviso — la documentazione ufficiale lo descrive come fornire ai modelli "accesso standardizzato" a file locali, database e API.

Questo contesto è importante per i flussi di lavoro agentici in particolare. Un agente che può solo chattare è un chatbot; un agente che può leggere il tuo repository, eseguire una query e chiamare uno strumento in un ciclo è un vero lavoratore. MCP è l'impiantistica che rende il secondo portatile. Se si vuole vedere il quadro generale di dove rientra questo nel design degli agenti, consultare il nostro post sull'automazione degli agenti AI.

Come funziona il modello client-server?

MCP segue una topologia host-client-server:

  • Host — l'applicazione che l'utente esegue (Claude Desktop, Claude Code, un'estensione IDE).
  • Client — risiede all'interno dell'host, mantiene una sessione 1:1 con un server.
  • Server — un processo che espone capacità tramite un trasporto.

Un host può eseguire molti client, ognuno dei quali parla con un server. Il protocollo è JSON-RPC 2.0 e presenta tre fasi di ciclo di vita che testo ogni volta che aggiungo un nuovo server:

  1. Initialize — il client invia la versione del protocollo, le capacità, le informazioni sul client; il server risponde con le proprie.
  2. Capability negotiation — entrambe le parti dichiarano cosa supportano (tools, resources, prompts, sampling, roots).
  3. Operation — il client richiede liste di strumenti, invoca gli strumenti, legge risorse e il server trasmette i risultati.

Opzioni di trasporto

Transport Dove viene eseguito Quando lo uso
stdio Processo subprocess locale, comunica tramite stdin/stdout Strumenti di sviluppo locali, filesystem, git — qualsiasi cosa sulla mia macchina
Streamable HTTP Server remoto su HTTPS con streaming SSE opzionale Server team condivisi, integrazioni ospitate nel cloud
SSE (legacy) Remoto, server-sent events Server più vecchi in fase di eliminazione; evitare per nuovi build

stdio è il predefinito per l'installazione locale ed è quello che usa claude mcp add a meno che non si passi un URL HTTP. Per una guida approfondita su claude mcp add e la decisione stdio-vs-HTTP, consultare la nostra guida di integrazione MCP per Claude Code.

Uno sviluppatore che digita su un laptop mentre configura un server MCP locale in un terminale

Quali sono i tre tipi di capacità, nella pratica?

La maggior parte del valore di MCP risiede nei tre tipi di capacità. Ecco come si comporta ciascuno quando un modello lo utilizza.

Tools (invocati dal modello)

Gli strumenti sono il motore principale. Il modello decide di chiamarli in base alla conversazione. Ho eseguito un server che esponeva uno strumento search_logs e il modello lo ha chiamato senza prompt non appena ho chiesto "perché il deploy è fallito alle 2 del mattino?". Le definizioni degli strumenti includono uno Schema JSON per gli argomenti, quindi il modello riceve input tipizzati e validati.

Resources (controllati dall'app)

Le risorse sono indirizzate da URI e sono tipicamente selezionate dall'utente, non dal modello — l'utente allega una risorsa come un file o un record, e l'host lo inietta nel contesto. Questo è importante per il controllo dello scope: il modello può vedere solo ciò che gli viene esplicitamente passato.

Prompts (invocati dall'utente)

I prompt sono modelli con argomenti che compaiono nell'interfaccia utente dell'host come slash-commands o elementi del menu. Sono la capacità più sottoutilizzata — li uso per codificare "revisionare questa PR rispetto alla nostra guida di stile" in modo da non dover incollare gli stessi istruzioni ogni volta.

Come si imposta un server MCP?

Configurazione concreta, utilizzando Claude Code come host. La stessa configurazione del server funziona nel file JSON di Claude Desktop.

  1. Installare Node.js 20+ (o Python 3.10+ con uv).
  2. Aggiungere un server di riferimento, ad esempio il filesystem server: npx -y @modelcontextprotocol/server-filesystem /Users/you/projects
  3. Registrarlo in Claude Code: claude mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem /Users/you/projects
  4. Verificare la connessione: claude mcp list e poi claude mcp get filesystem
  5. Riavviare l'host e cercare gli strumenti del server nella sessione.

Questo è l'intero ciclo. I server di riferimento nell'org GitHub coprono filesystem, Git, GitHub, Postgres, SQLite, Slack, Google Drive, Puppeteer e altro ancora.

Un server personalizzato minimale (Python)

from mcp.server.fastmcp import FastMCP

mcp = FastMCP("status")

@mcp.tool()
def healthcheck(service: str) -> str:
    """Return the current status of a service."""
    return f"{service}: ok"

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

L'ho testato contro un endpoint di staging in circa dieci minuti, incluso il collegamento a Claude Code. Per modelli più ampi sull'esposizione di servizi interni come API chiamabili da agenti, la nostra guida allo sviluppo API AI approfondisce l'autenticazione e la limitazione del tasso (rate-limiting).

Come appare l'ecosistema nel 2026?

L'ecosistema si è consolidato attorno al registro ufficiale e a un piccolo gruppo di server di riferimento ben mantenuti. Tengo una breve lista di quelli che mi fido realmente in produzione:

  • filesystem — lettura/scrittura locale dei file con restrizioni root.
  • github — problemi, PR, ricerca, operazioni sui file.
  • postgres / sqlite — solo lettura di default, introspezione dello schema.
  • puppeteer / playwright — automazione del browser per gli agenti.
  • slack — letture dei canali e invio messaggi.
Capability Server più usato Postura di sicurezza predefinita
File access filesystem Limitato a root espliciti
Code host github Pesante lettura; le scritture richiedono configurazione esplicita
Database postgres Solo lettura a meno che non si opti per la scrittura
Browser playwright Profilo sandbox
Messaging slack Token limitati al canale

Per orchestrare più server dietro subagent — un subagente possiede il database, un altro possiede il browser — il nostro post sui subagent di Claude Code descrive lo schema del team.

A cosa prestare attenzione?

Questa è la parte che la maggior parte degli introspetti salta. I server MCP vengono eseguiti con le tue credenziali e il tuo accesso al filesystem, quindi lo scope è fondamentale.

  • Tratta ogni server come una dipendenza. Fissa le versioni, verifica la fonte prima di eseguire npx su un repository sconosciuto. Uno strumento malevolo può esfiltrare qualsiasi cosa veda il modello.
  • Restringere i root. Il filesystem server è sicuro solo quanto la directory a cui lo punti — non passare mai /.
  • Preferire configurazioni database in sola lettura finché non si ha un motivo concreto per abilitare le scritture.
  • Attenzione all'iniezione di prompt. Se uno strumento restituisce contenuti su cui il modello agisce, l'input non fidato può diventare istruzione. Assumere che qualsiasi risorsa sia ostile.
  • Limitare lo scope dei token OAuth. I token Slack e GitHub dovrebbero avere lo scope minimo necessario per il server, non il tuo token personale.

Inizio ogni nuovo server in un account sandbox e monitoro le prime chiamate di strumenti prima di fidarmene in una sessione reale.

Composizione astratta di circuito stampato che simboleggia l'architettura a strati di un'integrazione MCP

Punto chiave

MCP è un piccolo protocollo che risolve un problema reale: permette a un server di esporre strumenti, risorse e prompt a qualsiasi host AI compatibile, eliminando la tassa di integrazione N-times-M. La meccanica è semplice — inizializzare, negoziare, operare su stdio o HTTP — ma la postura di sicurezza è ciò che determina se appartiene al tuo flusso di lavoro. Eseguire server che si possono auditare, limitare rigorosamente le loro credenziali e assumere che l'input non fidato sia ostile. Facendo questo, MCP è il modo più pulito per trasformare un assistente in un agente che può effettivamente toccare i tuoi sistemi.

Primo piano di una mano che posiziona un adesivo giallo 'Come fare' su una lavagna per la pianificazione.

Crediti delle immagini

Usa gli strumenti gratuiti mentre segui la guida.