Model Context Protocol (MCP) è un protocollo aperto che consente agli LLM di accedere a strumenti e fonti di dati esterni. Per maggiori dettagli su MCP, consulta la documentazione MCP.

Usa server MCP di terze parti a tuo rischio. Assicurati di fidarti dei server MCP e fai particolare attenzione quando usi server MCP che comunicano con internet, poiché questi possono esporti al rischio di prompt injection.

Configurare i server MCP

1

Aggiungere un Server MCP stdio

# Sintassi di base
claude mcp add <nome> <comando> [args...]

# Esempio: Aggiungere un server locale
claude mcp add my-server -e API_KEY=123 -- /path/to/server arg1 arg2
2

Aggiungere un Server MCP SSE

# Sintassi di base
claude mcp add --transport sse <nome> <url>

# Esempio: Aggiungere un server SSE
claude mcp add --transport sse sse-server https://example.com/sse-endpoint

# Esempio: Aggiungere un server SSE con header personalizzati
claude mcp add --transport sse api-server https://api.example.com/mcp -e X-API-Key=your-key
3

Aggiungere un Server MCP HTTP

# Sintassi di base
claude mcp add --transport http <nome> <url>

# Esempio: Aggiungere un server HTTP streamable
claude mcp add --transport http http-server https://example.com/mcp

# Esempio: Aggiungere un server HTTP con header di autenticazione
claude mcp add --transport http secure-server https://api.example.com/mcp -e Authorization="Bearer your-token"
4

Gestire i tuoi server MCP

# Elencare tutti i server configurati
claude mcp list

# Ottenere dettagli per un server specifico
claude mcp get my-server

# Rimuovere un server
claude mcp remove my-server

Suggerimenti:

  • Usa il flag -s o --scope per specificare dove viene memorizzata la configurazione:
    • local (predefinito): Disponibile solo per te nel progetto corrente (era chiamato project nelle versioni precedenti)
    • project: Condiviso con tutti nel progetto tramite il file .mcp.json
    • user: Disponibile per te in tutti i progetti (era chiamato global nelle versioni precedenti)
  • Imposta variabili d’ambiente con i flag -e o --env (es., -e KEY=value)
  • Configura il timeout di avvio del server MCP usando la variabile d’ambiente MCP_TIMEOUT (es., MCP_TIMEOUT=10000 claude imposta un timeout di 10 secondi)
  • Controlla lo stato del server MCP in qualsiasi momento usando il comando /mcp all’interno di Claude Code
  • MCP segue un’architettura client-server dove Claude Code (il client) può connettersi a più server specializzati
  • Claude Code supporta server SSE (Server-Sent Events) e HTTP streamable per la comunicazione in tempo reale
  • Usa /mcp per autenticarti con server remoti che richiedono autenticazione OAuth 2.0

Comprendere gli ambiti dei server MCP

I server MCP possono essere configurati a tre diversi livelli di ambito, ciascuno con scopi distinti per gestire l’accessibilità e la condivisione dei server. Comprendere questi ambiti ti aiuta a determinare il modo migliore per configurare i server per le tue esigenze specifiche.

Gerarchia e precedenza degli ambiti

Le configurazioni dei server MCP seguono una chiara gerarchia di precedenza. Quando esistono server con lo stesso nome a più ambiti, il sistema risolve i conflitti dando priorità prima ai server con ambito locale, seguiti dai server con ambito progetto, e infine dai server con ambito utente. Questo design assicura che le configurazioni personali possano sovrascrivere quelle condivise quando necessario.

Ambito locale

I server con ambito locale rappresentano il livello di configurazione predefinito e sono memorizzati nelle tue impostazioni utente specifiche del progetto. Questi server rimangono privati per te e sono accessibili solo quando lavori all’interno della directory del progetto corrente. Questo ambito è ideale per server di sviluppo personali, configurazioni sperimentali, o server contenenti credenziali sensibili che non dovrebbero essere condivise.

# Aggiungere un server con ambito locale (predefinito)
claude mcp add my-private-server /path/to/server

# Specificare esplicitamente l'ambito locale
claude mcp add my-private-server -s local /path/to/server

Ambito progetto

I server con ambito progetto abilitano la collaborazione del team memorizzando le configurazioni in un file .mcp.json nella directory radice del tuo progetto. Questo file è progettato per essere inserito nel controllo versione, assicurando che tutti i membri del team abbiano accesso agli stessi strumenti e servizi MCP. Quando aggiungi un server con ambito progetto, Claude Code crea automaticamente o aggiorna questo file con la struttura di configurazione appropriata.

# Aggiungere un server con ambito progetto
claude mcp add shared-server -s project /path/to/server

Il file .mcp.json risultante segue un formato standardizzato:

{
  "mcpServers": {
    "shared-server": {
      "command": "/path/to/server",
      "args": [],
      "env": {}
    }
  }
}

Per motivi di sicurezza, Claude Code richiede approvazione prima di usare server con ambito progetto dai file .mcp.json. Se devi reimpostare queste scelte di approvazione, usa il comando claude mcp reset-project-choices.

Ambito utente

I server con ambito utente forniscono accessibilità cross-progetto, rendendoli disponibili in tutti i progetti sulla tua macchina rimanendo privati al tuo account utente. Questo ambito funziona bene per server di utilità personali, strumenti di sviluppo, o servizi che usi frequentemente in diversi progetti.

# Aggiungere un server utente
claude mcp add my-user-server -s user /path/to/server

Scegliere l’ambito giusto

Seleziona il tuo ambito basandoti su:

  • Ambito locale: Server personali, configurazioni sperimentali, o credenziali sensibili specifiche per un progetto
  • Ambito progetto: Server condivisi dal team, strumenti specifici del progetto, o servizi richiesti per la collaborazione
  • Ambito utente: Utilità personali necessarie in più progetti, strumenti di sviluppo, o servizi usati frequentemente

Autenticarsi con server MCP remoti

Molti server MCP remoti richiedono autenticazione. Claude Code supporta il flusso di autenticazione OAuth 2.0 per la connessione sicura a questi server.

1

Aggiungere un server remoto che richiede autenticazione

# Aggiungere un server SSE o HTTP che richiede OAuth
claude mcp add --transport sse github-server https://api.github.com/mcp
2

Autenticarsi usando il comando /mcp

All’interno di Claude Code, usa il comando /mcp per gestire l’autenticazione:

> /mcp

Questo apre un menu interattivo dove puoi:

  • Visualizzare lo stato di connessione per tutti i server
  • Autenticarti con server che richiedono OAuth
  • Cancellare l’autenticazione esistente
  • Visualizzare le capacità del server
3

Completare il flusso OAuth

Quando selezioni “Authenticate” per un server:

  1. Il tuo browser si apre automaticamente al provider OAuth
  2. Completa l’autenticazione nel tuo browser
  3. Claude Code riceve e memorizza in modo sicuro il token di accesso
  4. La connessione del server diventa attiva

Suggerimenti:

  • I token di autenticazione sono memorizzati in modo sicuro e aggiornati automaticamente
  • Usa “Clear authentication” nel menu /mcp per revocare l’accesso
  • Se il tuo browser non si apre automaticamente, copia l’URL fornito
  • L’autenticazione OAuth funziona con entrambi i trasporti SSE e HTTP

Connettersi a un server MCP Postgres

Supponiamo che tu voglia dare a Claude accesso in sola lettura a un database PostgreSQL per query e ispezione dello schema.

1

Aggiungere il server MCP Postgres

claude mcp add postgres-server /path/to/postgres-mcp-server --connection-string "postgresql://user:pass@localhost:5432/mydb"
2

Interrogare il tuo database con Claude

> descrivi lo schema della nostra tabella users
> quali sono gli ordini più recenti nel sistema?
> mostrami la relazione tra customers e invoices

Suggerimenti:

  • Il server MCP Postgres fornisce accesso in sola lettura per sicurezza
  • Claude può aiutarti a esplorare la struttura del database ed eseguire query analitiche
  • Puoi usare questo per comprendere rapidamente gli schemi di database in progetti non familiari
  • Assicurati che la tua stringa di connessione usi credenziali appropriate con i permessi minimi richiesti

Aggiungere server MCP da configurazione JSON

Supponiamo che tu abbia una configurazione JSON per un singolo server MCP che vuoi aggiungere a Claude Code.

1

Aggiungere un server MCP da JSON

# Sintassi di base
claude mcp add-json <nome> '<json>'

# Esempio: Aggiungere un server stdio con configurazione JSON
claude mcp add-json weather-api '{"type":"stdio","command":"/path/to/weather-cli","args":["--api-key","abc123"],"env":{"CACHE_DIR":"/tmp"}}'
2

Verificare che il server sia stato aggiunto

claude mcp get weather-api

Suggerimenti:

  • Assicurati che il JSON sia correttamente escaped nella tua shell
  • Il JSON deve conformarsi allo schema di configurazione del server MCP
  • Puoi usare -s global per aggiungere il server alla tua configurazione globale invece di quella specifica del progetto

Importare server MCP da Claude Desktop

Supponiamo che tu abbia già configurato server MCP in Claude Desktop e voglia usare gli stessi server in Claude Code senza riconfigurarli manualmente.

1

Importare server da Claude Desktop

# Sintassi di base 
claude mcp add-from-claude-desktop 
2

Selezionare quali server importare

Dopo aver eseguito il comando, vedrai un dialogo interattivo che ti permette di selezionare quali server vuoi importare.

3

Verificare che i server siano stati importati

claude mcp list 

Suggerimenti:

  • Questa funzionalità funziona solo su macOS e Windows Subsystem for Linux (WSL)
  • Legge il file di configurazione di Claude Desktop dalla sua posizione standard su quelle piattaforme
  • Usa il flag -s global per aggiungere server alla tua configurazione globale
  • I server importati avranno gli stessi nomi di Claude Desktop
  • Se esistono già server con gli stessi nomi, otterranno un suffisso numerico (es., server_1)

Usare Claude Code come server MCP

Supponiamo che tu voglia usare Claude Code stesso come server MCP a cui altre applicazioni possono connettersi, fornendo loro gli strumenti e le capacità di Claude.

1

Avviare Claude come server MCP

# Sintassi di base
claude mcp serve
2

Connettersi da un'altra applicazione

Puoi connetterti al server MCP di Claude Code da qualsiasi client MCP, come Claude Desktop. Se stai usando Claude Desktop, puoi aggiungere il server MCP di Claude Code usando questa configurazione:

{
  "command": "claude",
  "args": ["mcp", "serve"],
  "env": {}
}

Suggerimenti:

  • Il server fornisce accesso agli strumenti di Claude come View, Edit, LS, ecc.
  • In Claude Desktop, prova a chiedere a Claude di leggere file in una directory, fare modifiche, e altro ancora.
  • Nota che questo server MCP sta semplicemente esponendo gli strumenti di Claude Code al tuo client MCP, quindi il tuo client è responsabile dell’implementazione della conferma utente per le singole chiamate agli strumenti.

Usare le risorse MCP

I server MCP possono esporre risorse che puoi referenziare usando le menzioni @, simile a come referenzi i file.

Referenziare risorse MCP

1

Elencare le risorse disponibili

Digita @ nel tuo prompt per vedere le risorse disponibili da tutti i server MCP connessi. Le risorse appaiono insieme ai file nel menu di autocompletamento.

2

Referenziare una risorsa specifica

Usa il formato @server:protocol://resource/path per referenziare una risorsa:

> Puoi analizzare @github:issue://123 e suggerire una correzione?
> Per favore rivedi la documentazione API su @docs:file://api/authentication
3

Riferimenti a risorse multiple

Puoi referenziare più risorse in un singolo prompt:

> Confronta @postgres:schema://users con @docs:file://database/user-model

Suggerimenti:

  • Le risorse vengono automaticamente recuperate e incluse come allegati quando referenziate
  • I percorsi delle risorse sono ricercabili in modo fuzzy nell’autocompletamento delle menzioni @
  • Claude Code fornisce automaticamente strumenti per elencare e leggere le risorse MCP quando i server le supportano
  • Le risorse possono contenere qualsiasi tipo di contenuto che il server MCP fornisce (testo, JSON, dati strutturati, ecc.)

Usare i prompt MCP come comandi slash

I server MCP possono esporre prompt che diventano disponibili come comandi slash in Claude Code.

Eseguire prompt MCP

1

Scoprire i prompt disponibili

Digita / per vedere tutti i comandi disponibili, inclusi quelli dai server MCP. I prompt MCP appaiono con il formato /mcp__servername__promptname.

2

Eseguire un prompt senza argomenti

> /mcp__github__list_prs
3

Eseguire un prompt con argomenti

Molti prompt accettano argomenti. Passali separati da spazi dopo il comando:

> /mcp__github__pr_review 456
> /mcp__jira__create_issue "Bug in login flow" high

Suggerimenti:

  • I prompt MCP sono scoperti dinamicamente dai server connessi
  • Gli argomenti sono analizzati basandosi sui parametri definiti del prompt
  • I risultati del prompt sono iniettati direttamente nella conversazione
  • I nomi dei server e dei prompt sono normalizzati (gli spazi diventano underscore)