Cos'è MCP e come collegare il primo server passo dopo passo
Cos'è MCP (Model Context Protocol)? Spiego host, server e strumenti, poi colleghiamo un server MCP a Claude Code e all'app Claude. Passo dopo passo.
Questo articolo in altre lingue:العربيةDeutschEnglishEspañolFrançais日本語Polski简体中文
In questo articolo
Cos’è MCP? MCP (Model Context Protocol) è uno standard aperto che permette a un’app di AI, come Claude, ChatGPT o Cursor, di collegarsi a sistemi esterni: file, database, calendario, Notion o GitHub. Nella documentazione ufficiale i suoi creatori lo paragonano a una porta USB-C: un’unica spina che va bene per tanti dispositivi.
In questa guida spiego come funziona MCP dentro, poi colleghiamo il primo server MCP in Claude Code (remoto e locale) e nell’app Claude. I comandi vengono dalla documentazione di Claude Code e dal repository dei server di riferimento MCP.
Cos’è MCP in pratica?
Da solo, un modello linguistico non vede i nostri file né il nostro calendario. Perché un agente AI possa fare qualcosa nel mondo, gli servono degli strumenti (cos’è un agente l’ho spiegato nella guida Cos’è un agente AI). Senza uno standard comune, ogni app dovrebbe collegare ogni strumento a modo suo.
MCP cambia le cose: qualcuno scrive una volta sola un server MCP per un certo servizio, e da lì lo può usare qualsiasi app che supporta il protocollo. La documentazione fa alcuni esempi di cosa diventa possibile:
- un agente che ha accesso al nostro Google Calendar e a Notion,
- Claude Code che costruisce un’intera app web partendo da un design in Figma,
- un chatbot aziendale collegato a più database contemporaneamente,
- un modello che progetta un oggetto 3D in Blender e lo manda alla stampante.
Da dove viene MCP?
Anthropic ha rilasciato MCP come open source il 25 novembre 2024. Un anno dopo, il 9 dicembre 2025, l’azienda ha donato il protocollo all’Agentic AI Foundation, un fondo che opera all’interno della Linux Foundation e a cui partecipano anche OpenAI e Block. Così MCP non appartiene più a una sola azienda.
Oggi il protocollo è supportato, tra gli altri, da Claude, ChatGPT, Visual Studio Code e Cursor, quindi un server scritto una volta funziona in tanti posti.
Come funziona MCP dentro?
Secondo la descrizione dell’architettura, in MCP ci sono tre ruoli:
- Host, cioè l’app di AI che usiamo (per esempio Claude Code o Claude Desktop),
- Client, cioè un componente dentro l’host. L’host crea un client separato per ogni server,
- Server, cioè il programma che fornisce dati e strumenti.
Il server può girare in locale (sul nostro computer, comunicando tramite standard input e output, il cosiddetto “stdio”) oppure in remoto (su internet, tramite il cosiddetto “Streamable HTTP”). I messaggi sono in formato JSON-RPC 2.0.
Il server mette a disposizione tre tipi di cose:
- strumenti (tools), cioè funzioni che il modello può chiamare, per esempio una query al database o il salvataggio di un file,
- risorse (resources), cioè dati per il contesto, per esempio il contenuto di un file o lo schema di un database,
- prompt, cioè modelli pronti di interazione con il modello.
Il meccanismo è semplice: il client chiede al server l’elenco degli strumenti (tools/list), il modello ne sceglie uno, il client lo chiama (tools/call) e restituisce il risultato al modello. Una cosa interessante: nella versione attuale della specifica (2026-07-28) il protocollo è stateless, cioè ogni richiesta porta con sé tutto ciò che serve al server per gestirla.
Passo 1: come collegare un server MCP remoto a Claude Code?
Do per scontato che Claude Code sia già installato (se non lo è, partiamo dalla guida a Claude Code). Secondo la documentazione, il server HTTP remoto è l’opzione consigliata. La sintassi di base è questa:
claude mcp add --transport http <nome> <url>
Ecco l’esempio della documentazione, cioè il collegamento a Notion:
claude mcp add --transport http notion https://mcp.notion.com/mcp
La maggior parte dei server remoti richiede il login. In quel caso, nella sessione di Claude Code scriviamo /mcp e completiamo l’accesso nel browser. Lo stesso comando mostra anche lo stato di tutti i server collegati.
Se il server usa un token invece del login, aggiungiamo un header:
claude mcp add --transport http secure-api https://api.example.com/mcp \
--header "Authorization: Bearer your-token"
Passo 2: come avviare un server MCP locale?
Un server locale gira sul nostro computer come un normale processo. Un buon primo esempio è il server dei file di riferimento, che dà al modello accesso solo alle cartelle indicate. Ci serve Node.js (per npx).
Il comando del server va scritto dopo --, e tutto ciò che segue questo segno arriva al server così com’è:
claude mcp add --transport stdio filesystem -- npx -y @modelcontextprotocol/server-filesystem ~/notatki
L’ultimo argomento è la cartella a cui il server ha accesso (se ne possono indicare più di una). Il server offre, tra gli altri, gli strumenti read_text_file, write_file, edit_file, list_directory e search_files. A questo punto in Claude Code possiamo chiedere, per esempio, “trova nelle note tutto quello che riguarda MCP e fanne un elenco”.
Se il server ha bisogno di una chiave API, la passiamo con --env. Esempio dalla documentazione:
claude mcp add --env AIRTABLE_API_KEY=YOUR_KEY --transport stdio airtable \
-- npx -y airtable-mcp-server
Passo 3: come gestire i server MCP?
Per la gestione bastano tre comandi semplici:
claude mcp list # elenco dei server
claude mcp get notion # dettagli di un server
claude mcp remove notion # rimozione di un server
Conta anche lo scope (ambito), cioè dove viene salvato il server:
| Scope | Dove funziona | Arriva al team? | Dove è salvato |
|---|---|---|---|
local (predefinito) |
solo il progetto corrente | no | ~/.claude.json |
project |
solo il progetto corrente | sì, tramite il repository | .mcp.json nella cartella del progetto |
user |
tutti i nostri progetti | no | ~/.claude.json |
Lo scope si sceglie con il flag --scope, per esempio --scope user. Con lo scope project teniamo le chiavi API nelle variabili d’ambiente (${VAR} nel file .mcp.json), così non finiscono nel repository.
Passo 4: come aggiungere un server MCP nell’app Claude?
Nell’app Claude (web e desktop) i server MCP si chiamano connettori. Quelli pronti si trovano nel catalogo dei connettori, mentre un nostro server remoto si aggiunge come “custom connector”. Secondo il centro assistenza di Claude:
- andiamo in Customize > Connectors,
- clicchiamo “+ Add” e poi “Add custom connector”,
- inseriamo il nome e l’URL del server MCP remoto,
- controlliamo le impostazioni di accesso e clicchiamo “Add”.
I connettori funzionano con tutti i piani, ma nel piano gratuito possiamo aggiungere un solo connettore personalizzato. Attenzione: Claude si collega al server dal cloud di Anthropic, quindi il server deve essere raggiungibile da internet. I connettori vengono poi usati anche da altre funzioni di Claude, per esempio dall’agente Claude Duet.
A cosa fare attenzione?
Primo: a chi diamo fiducia. Un server MCP dà al modello reali capacità di agire, e la documentazione di Claude Code avverte in modo esplicito che i server che scaricano contenuti dall’esterno ci espongono al prompt injection. Il centro assistenza aggiunge che i server malevoli possono contenere istruzioni nascoste che cercano di spingere Claude ad azioni non volute. Colleghiamo solo server di aziende e autori di cui ci fidiamo.
Secondo: i permessi. Clicchiamo “Allow always” solo per gli strumenti di cui ci fidiamo abbastanza da lasciarli lavorare senza supervisione. La buona notizia: un repository clonato non può approvare da solo i propri server da .mcp.json, perché Claude Code prima chiede il consenso.
Terzo: l’ampiezza dell’accesso. Al server dei file diamo solo una cartella precisa, non l’intero disco. Di come proteggere chiavi e agenti ho scritto di più nella guida Sicurezza degli agenti AI.
FAQ
Cos’è MCP in parole semplici?
È uno standard comune con cui le app di AI si collegano a strumenti e dati. Un server MCP scritto una volta funziona in tante app, così come un dispositivo USB-C funziona con tanti computer.
MCP funziona solo con Claude?
No. Il protocollo l’ha creato Anthropic, ma oggi lo sviluppa l’Agentic AI Foundation all’interno della Linux Foundation, e lo supportano tra gli altri ChatGPT, Visual Studio Code e Cursor.
Che differenza c’è tra un server MCP locale e uno remoto?
Quello locale gira sul nostro computer e comunica tramite stdio, di solito con una sola app. Quello remoto gira su internet (Streamable HTTP) e di solito serve più client alla volta; per il login la specifica consiglia OAuth.
MCP è gratuito?
Il protocollo in sé è aperto e gratuito. Paghiamo l’app di AI che usiamo ed eventualmente il servizio a cui il server si collega.