Configurazione MCP di VS Code: usa servers al posto di mcpServers
Hai copiato una configurazione MCP funzionante da Claude o Cursor, l'hai incollata in VS Code, hai riavviato e non è successo nulla. Nessun errore, nessun avviso, nessun server nell'elenco. Il file è JSON valido e a VS Code va benissimo. Il problema è una sola parola, ed è quella più esterna.
- VS Code racchiude i server MCP sotto servers. Claude, Cursor e la maggior parte degli altri usano mcpServers.
- La chiave sbagliata non produce alcun errore, ed è per questo che fa perdere un'ora a molti.
- La definizione interna del server è identica tra i client. Cambia solo l'involucro.
La differenza, affiancata
Stesso server, stesso comando, stessi argomenti. L'unica cosa che cambia è la chiave dell'involucro.
| Client | File di configurazione | Chiave dell'involucro |
|---|---|---|
| GitHub Copilot in VS Code | .vscode/mcp.json | servers |
| Cursor | ~/.cursor/mcp.json | mcpServers |
| Claude Desktop | claude_desktop_config.json | mcpServers |
| La maggior parte degli altri client basati su configurazione | varia | mcpServers |
Cosa vuole VS Code
In .vscode/mcp.json, nella radice del tuo workspace. Usando come esempio il connettore di MyLinedChart:
{ "servers": { "mylinedchart": { "command": "npx", "args": ["-y", "@mylinedchart/mcp-chart-context"] } } }
Sostituisci command e args del tuo server. La forma dell'oggetto interno non cambia da un client all'altro.
Cosa vuole tutto il resto
Lo stesso server, per Claude o Cursor:
{ "mcpServers": { "mylinedchart": { "command": "npx", "args": ["-y", "@mylinedchart/mcp-chart-context"] } } }
Se hai entrambi gli editor aperti, ti servono davvero entrambi i file. I due editor non possono condividere un'unica configurazione.
Perché fallisce senza errori
VS Code legge il file, trova JSON valido e cerca una chiave servers. Nel file non c'è alcuna chiave servers, quindi VS Code trova zero server da avviare. Zero server non è una condizione di errore. Dal punto di vista di VS Code non hai configurato nulla, cosa del tutto legittima.
Quindi non c'è alcuna sottolineatura rossa, nessuna notifica e nessuna voce in alcun log che dica che la chiave era sbagliata. Il fallimento sembra identico a un server che va in crash all'avvio, ed è per questo che la gente si mette a fare il debug del server.
- Il file è JSON valido, quindi non compare alcun errore di parsing.
- Una chiave di primo livello non riconosciuta viene ignorata invece che rifiutata.
- Zero server configurati è uno stato normale, quindi VS Code non segnala alcun guasto.
Come capire quale problema hai
Prima di dare per rotto il server, verifica che VS Code abbia mai provato ad avviarlo.
- Controlla prima la chiave dell'involucro. Il controllo costa cinque secondi ed è la risposta nella maggior parte dei casi.
- Esegui a mano il comando del server in un terminale. Se il server parte, il problema è altrove.
- Cerca il server nell'elenco dei server MCP di VS Code. Se è assente, non è mai stato configurato; se è presente ma fallisce, c'è un vero errore di avvio.
- Se hai installato con un link a un clic invece che a mano, questa intera categoria di problemi non si applica.
Due trappole collegate
Già che ci sei, altre due cose falliscono nello stesso modo silenzioso.
Primo: i link di installazione MCP a un clic trasportano il loro contenuto come JSON codificato in URL, in chiaro. Il Base64 viene accettato dal parser dell'URL e poi non fa nulla in silenzio, che è il peggior fallimento possibile: un pulsante che sembra aver funzionato.
Secondo: per VS Code il nome del server viaggia dentro il contenuto, e non come parametro di query separato come fa Cursor. Un link costruito sulla forma di Cursor non si installa correttamente in VS Code anche se si apre.
Dove entra MyLinedChart
MyLinedChart include un connettore MCP che dà a un agente AI il tuo grafico in tempo reale: simboli, i tuoi disegni, i valori degli indicatori e le barre a schermo. Il connettore gira sul tuo computer e i dati non passano dai nostri server.
L'app ha un pulsante Add to VS Code a un clic che scrive la chiave corretta al posto tuo, ed è il motivo per usarlo invece di modificare a mano. Configurazione e altri client: /resources/articles/ibkr-chart-data-github-copilot-vs-code.
Prossimo passo
Correggi la chiave, riavvia VS Code e il server compare. Se il server continua a non comparire, ora sai che il problema è il server e non la configurazione, che è un elenco molto più breve da controllare.
Collega la tua AI su /mcp.
Domande frequenti
- Perché VS Code usa servers invece di mcpServers?
- La chiave servers è una scelta di nome nel formato di configurazione MCP di VS Code, fatta in modo indipendente dalla convenzione stabilita da Claude Desktop. Nessuna delle due è più corretta. La differenza diventa un problema solo perché le due sembrano intercambiabili e una delle due fallisce senza dirlo.
- VS Code mi avvisa se uso la chiave sbagliata?
- No, ed è proprio la difficoltà. Il file è JSON valido, una chiave di primo livello sconosciuta viene ignorata invece che rifiutata e avere zero server configurati è uno stato normale. Niente sembra un guasto.
- Posso usare un solo file di configurazione per VS Code e Cursor?
- No. Leggono percorsi diversi e si aspettano chiavi di involucro diverse, quindi servono entrambi i file. La definizione interna del server è identica, quindi basta una copia con una parola cambiata.
- Questo vale anche per Copilot di Windows?
- No. Il Copilot di cui si parla qui è GitHub Copilot dentro VS Code, che supporta i server MCP. L'assistente della barra delle applicazioni di Windows è un prodotto separato che condivide il nome e non usa questi file di configurazione.
Prova MyLinedChart
MyLinedChart conserva disegni, note e valori degli indicatori come dati che puoi esportare, rivedere e riutilizzare.
Scopri MyLinedChart