Il Model Context Protocol (MCP) consente a Claude Code di utilizzare strumenti oltre il suo set integrato, come la ricerca in un tracker di problemi, l’interrogazione di un database o il controllo di un browser web. Questi strumenti provengono dai server MCP, che vengono eseguiti sulla vostra macchina o come servizi ospitati. Questa guida vi guida attraverso la connessione di un server MCP end-to-end con la CLI di Claude Code. Alla fine, avrete un server connesso e rispondente, saprete dove vive la sua configurazione su disco e saprete come risolvere gli errori di connessione più comuni.Documentation Index
Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
Prima di iniziare
Assicuratevi di avere:- Claude Code installato e autenticato
- Un terminale aperto in una directory di progetto. Qualsiasi directory funziona, inclusa una vuota.
Aggiungere e verificare un server
L’esempio seguente si connette al server MCP della documentazione di Claude Code, un server ospitato con ricerca full-text sulla documentazione di Claude Code. Non richiede autenticazione o alcuna configurazione speciale, quindi funziona bene come primo server per testare il flusso di configurazione. I passaggi sono gli stessi per qualsiasi server: aggiungerlo, controllare lo stato della connessione, quindi utilizzarlo in una sessione, con un passaggio di pulizia facoltativo alla fine. Alcuni server aggiungono un passaggio, come un accesso al browser, mostrato in Esempi di server MCP aggiuntivi. Per altri server a cui connettersi, consultare la Directory Anthropic.Aggiungere il server MCP
claude: state configurando il server prima di avviare una conversazione.claude mcp add: registra un server con Claude Code.--transport http: il server è ospitato a un URL piuttosto che eseguito come processo locale.claude-code-docs: un nome che voi scegliete. Chiamare lo stesso serverdocsfunzionerebbe in modo identico. Claude Code utilizza qualsiasi nome voi scegliate per etichettare gli strumenti del server nell’output di Claude e per fare riferimento al server in comandi comeclaude mcp remove.https://code.claude.com/docs/mcp: l’URL dove il server è ospitato.
Added HTTP MCP server claude-code-docs with URL: https://code.claude.com/docs/mcp to local config. La parte local config significa che il server è registrato per voi, in questo progetto: se avviate Claude Code in un progetto diverso, questo server non è attivo lì. Per registrare un server una volta per tutti i vostri progetti, aggiungetelo a livello di utente, coperto in Cambiare l’ambito del server.Controllare lo stato della connessione
| Stato | Significato |
|---|---|
✓ Connected | Pronto all’uso. Questo è quello che dovreste vedere per claude-code-docs |
! Needs authentication | Il server è raggiungibile ma necessita un accesso al browser, o un token passato con --header. Vedere Connettere un server che richiede l’accesso |
✗ Failed to connect | Il server non ha risposto. Vedere Risoluzione dei problemi |
✗ Connection error | Il tentativo di connessione ha generato un errore. Vedere Risoluzione dei problemi |
⏸ Pending approval | Un server con ambito di progetto che non avete ancora approvato. Vedere Modificare .mcp.json direttamente |
Utilizzare il server
Rimuovere il server
Dove vengono salvati i server
Il comandoclaude mcp add scrive i dettagli del server in un file di configurazione. Per impostazione predefinita registra il server a livello di ambito local: privato per voi, attivo solo nel progetto corrente. Passare --scope user per registrarlo una volta per tutti i vostri progetti, o --scope project per condividerlo con i vostri compagni di squadra. Cambiare l’ambito del server illustra entrambi.
claude mcp add funziona allo stesso modo in ogni shell, inclusi PowerShell e Command Prompt. All’interno di una sessione claude, utilizzare il comando /mcp per controllare e gestire i server che avete già aggiunto.- Aggiungere un server locale: eseguire un programma sulla vostra macchina invece di connettersi a un URL.
- Modificare
.mcp.jsondirettamente: scrivere l’entry JSON voi stessi invece di utilizzare il comando. - Connettere un server che richiede l’accesso: aggiungere un server ospitato che necessita un accesso al browser prima che i suoi strumenti funzionino.
Trovare la vostra configurazione su disco
Il comandoclaude mcp add scrive il server in uno di tre ambiti, archiviati in due file, a seconda del flag --scope. Non è necessario modificare questi file direttamente, ma sapere dove si trovano aiuta con il debug e il controllo della versione.
| Ambito | File | Disponibile per |
|---|---|---|
local | ~/.claude.json, sotto l’entry per questo progetto | Solo voi, solo questo progetto. L’impostazione predefinita |
project | .mcp.json nella radice del vostro progetto | Chiunque cloni il progetto |
user | ~/.claude.json, sotto la chiave mcpServers di livello superiore | Solo voi, tutti i progetti |
~/.claude.json si risolve in %USERPROFILE%\.claude.json, tipicamente C:\Users\YourName\.claude.json. Se avete impostato CLAUDE_CONFIG_DIR, Claude Code legge .claude.json da dentro quella directory invece.
Eseguire claude mcp get claude-code-docs per vedere quale ambito contiene la definizione di un server. Per come gli ambiti interagiscono quando lo stesso server è definito in più di uno, vedere Ambiti di installazione MCP.
Cambiare l’ambito del server
L’ambito di un server è fisso quando lo aggiungete, quindi cambiare l’ambito significa rimuovere l’entry e riaggiungerla a quello nuovo. Entrambi i casi seguenti iniziano rimuovendo l’entry locale dalla prima procedura dettagliata, in modo che il server abbia una sola definizione. Se l’avete già rimosso alla fine di quella procedura dettagliata, saltate questo comando:Utilizzare un server in tutti i vostri progetti
Riaggiunger il server a livello di ambitouser per renderlo attivo in ogni progetto che aprite, ancora privato per voi:
Condividere un server con il vostro team
Riaggiunger il server a livello di ambitoproject, che scrive in .mcp.json nella radice del progetto:
.mcp.json al controllo della versione. I compagni di squadra che clonano il repository e avviano Claude Code vedono un prompt per approvare il server, quindi si connette anche per loro.
Esempi di server MCP aggiuntivi
La prima procedura dettagliata ha utilizzato un server ospitato che si connette senza alcun accesso. Gli esempi seguenti coprono le altre due forme comuni, con lo stesso flusso di aggiunta, controllo, utilizzo.Aggiungere un server locale
Un server stdio locale è un programma che Claude Code avvia come sottoprocesso sulla vostra macchina, piuttosto che un servizio che raggiunge tramite un URL. Utilizzatene uno per strumenti che necessitano accesso a risorse locali come un browser, il vostro filesystem o un socket di database. Il server MCP Playwright è un buono da provare: dà a Claude un browser che può navigare, fare clic e leggere, e non necessita alcun account. Viene eseguito tramitenpx, quindi richiede Node.js 18 o successivo.
Aggiungere il server Playwright
- Non c’è il flag
--transport, perché i server locali utilizzano il trasporto predefinitostdio. - Tutto dopo il separatore
--è il comando che Claude Code esegue per avviare il server. -ydice anpxdi installare il pacchetto senza chiedere.
--browser con il nome del browser, ad esempio --browser firefox, dopo @playwright/mcp@latest.Controllare la connessione
Added significa che l’entry è stata salvata, non che il comando viene eseguito. Controllare la connessione:✗ Failed to connect mentre npx scarica il pacchetto, quindi attendere un momento ed eseguirlo di nuovo.Utilizzare il browser
playwright e l’azione, come browser_navigate.Provate a puntarlo al vostro server di sviluppo locale per controllare che una pagina ancora si renderizzi dopo una modifica, o fatelo camminare attraverso un rapporto di bug passo dopo passo.Connettere un server che richiede l’accesso
Servizi ospitati come Sentry, Linear e Notion eseguono i loro server MCP dietro OAuth: aggiungete l’URL del server, quindi accedete tramite il vostro browser. I passaggi seguenti utilizzano Sentry come esempio. Per connettere un servizio diverso, sostituire il suo URL, che potete trovare nella Directory Anthropic o nella documentazione del servizio.Aggiungere il server
add è lo stesso che per il server docs, con l’URL di Sentry:claude mcp list mostra il server con ! Needs authentication. È previsto: il passaggio successivo completa l’accesso.Autenticarsi nel vostro browser
sentry dall’elenco, premere Invio e scegliere Authenticate. Il vostro browser si apre alla pagina di accesso di Sentry. Approvare la connessione lì.Di nuovo in Claude Code, lo stato del server cambia a connesso. Se l’accesso fallisce o il browser non si apre, vedere Risoluzione dei problemi.--header "Authorization: Bearer <token>". Vedere l’esempio GitHub per una versione elaborata.
Modificare .mcp.json direttamente
Ogni file nella tabella degli ambiti utilizza lo stesso formato JSON per le entry dei server. Questa sezione modifica.mcp.json, il file con ambito di progetto. È quello che vale più la pena scrivere a mano perché è controllato nel repository, dove funge anche da configurazione come codice per il vostro team.
Creare .mcp.json nella radice del vostro progetto. L’esempio seguente definisce entrambi i server da questa guida, il server docs ospitato raggiunto tramite HTTP e il server Playwright come processo stdio locale:
- Per i server HTTP,
urlè l’endpoint a cui Claude Code si connette. - Per i server stdio,
commandeargssono il programma che esegue.
.mcp.json all’avvio.
La prima volta che Claude Code vede un server con ambito di progetto, vi chiede di approvarlo. Il prompt esiste in modo che un repository che clonate non possa lanciare processi sulla vostra macchina senza il vostro consenso. Approvate il prompt, o eseguite /mcp per approvare più tardi se l’avete perso.
Una volta approvato, eseguire /mcp e controllare che i server mostrino come connessi. Se uno mostra un errore invece, vedere Risoluzione dei problemi.
Connettere da altre superfici
Questa guida utilizza i comandi CLIclaude mcp, ma ogni superficie di Claude Code può connettersi ai server MCP:
- App desktop Claude Code: aggiungere server tramite l’UI Connectors.
- App Claude Desktop chat: un’app separata da Claude Code. Per copiare i server dal suo
claude_desktop_config.jsonnella CLI, eseguireclaude mcp add-from-claude-desktopsu macOS o WSL. - VS Code: vedere Connettere a strumenti esterni con MCP.
- Claude Code sul web: legge
.mcp.jsondal vostro repository. Vedere Modificare .mcp.json direttamente. - Claude.ai: i connettori che aggiungete a claude.ai/customize/connectors si caricano automaticamente nella CLI quando accedete con quell’account. Vedere Utilizzare i server MCP da Claude.ai.
Risoluzione dei problemi
Se un server non si connette, controllare il suo stato con/mcp all’interno di una sessione o claude mcp list dal vostro shell, quindi abbinare il sintomo seguente. Il pannello /mcp vi consente anche di riconnettervi o autenticarvi senza lasciare la sessione.
/mcp shows No MCP servers configured
/mcp shows No MCP servers configured
- Avete eseguito
claude mcp addda un progetto diverso. I server con ambito locale sono legati al progetto dove li avete aggiunti: la radice del repository, o la directory esatta se non eravate in un repository git. Riaggiunger il server dal progetto in cui siete ora, o aggiungetelo con--scope userin modo che non sia legato a un progetto. - Avete modificato un file di configurazione al percorso sbagliato. I file corretti sono
~/.claude.jsone<project>/.mcp.json. Claude Code non legge percorsi come~/.claude/config/mcp.json,~/.claude/mcp.json, o%APPDATA%\Claude\mcp.json.
Status shows Failed to connect or Connection error
Status shows Failed to connect or Connection error
curl.exe invece di curl in modo che la richiesta vada al binario curl reale piuttosto che all’alias Invoke-WebRequest.La risposta vi dice quale tipo di problema avete:- Un
404o405: il server è attivo. Molti endpoint MCP rispondono solo alle richieste POST, quindi questo comunque conferma che l’URL è raggiungibile dalla vostra macchina. - Un
401o403: il server è attivo e dovete autenticarvi. Utilizzare l’accesso al browser in Connettere un server che richiede l’accesso, o per i server che prendono un token invece, come quello di GitHub, passarlo con--header "Authorization: Bearer <token>"sul comandoclaude mcp add. - Nessuna risposta: controllare l’URL e la vostra rete.
- Il comando si avvia e attende l’input: il server stesso funziona. Eseguire
claude mcp get <name>e confermare che il comando mostrato lì corrisponda a quello che avete appena eseguito. Se il comando mostrato differisce da quello che avete digitato, probabilmente avete omesso il separatore--prima del comando del server. Rimuovere il server e riaggiungerlo con--al suo posto. Se avete scritto.mcp.jsona mano, controllare la sua sintassi e posizione. - Il comando genera un errore: il messaggio nomina cosa manca, come Node.js o un browser.
Connection timed out at startup
Connection timed out at startup
npx scarica il pacchetto. Aumentare il limite con la variabile di ambiente MCP_TIMEOUT, in millisecondi:Server already exists
Server already exists
remove segnala exists in multiple scopes. Passare --scope per scegliere quale copia eliminare, ad esempio claude mcp remove claude-code-docs --scope local.Server connects but no tools appear
Server connects but no tools appear
/mcp all’interno di una sessione e selezionare il server per vedere il suo elenco di strumenti. Se l’elenco è vuoto, il server è stato avviato ma non ha registrato alcuno strumento, il che di solito significa che manca una variabile di ambiente richiesta come una chiave API.Passare la variabile con --env KEY=value su claude mcp add, o nel campo env dell’entry .mcp.json del server. La documentazione del server elenca le variabili di cui ha bisogno.Changes to .mcp.json don't take effect
Changes to .mcp.json don't take effect
.mcp.json all’avvio della sessione. Uscire e riavviare la sessione dopo aver modificato il file.Se i vostri server ancora non appaiono, eseguire /mcp e cercare un avviso di analisi. Claude Code salta le entry malformate e mostra il campo offensivo lì.Se in precedenza avete rifiutato il server quando richiesto, reimpostare le approvazioni del progetto:OAuth sign-in fails or browser doesn't open
OAuth sign-in fails or browser doesn't open
/mcp, selezionare il server e scegliere Authenticate di nuovo. Se il browser non si apre automaticamente, copiare l’URL mostrato nel terminale e aprirlo manualmente. Vedere Autenticarsi con server MCP remoti per porte di callback fisse e credenziali preconfigurate.Passaggi successivi
Con un server connesso, esplorare il resto di ciò che MCP abilita:- Trovare altri server MCP nella Directory Anthropic
- Condividere server con il vostro team utilizzando gli ambiti di installazione
- Gestire l’accesso MCP per un’organizzazione con impostazioni gestite e controlli delle politiche
- Fare riferimento alle risorse MCP nei prompt con menzioni @
- Eseguire i prompt MCP come comandi dal menu
/ - Costruire il vostro server con l’SDK MCP