Drie editors, drie verschillende antwoorden op dezelfde vraag. VS Code bewaart
MCP-servers onder een sleutel op het hoogste niveau die servers heet, Zed noemt
datzelfde context_servers, en Windsurf — dat sinds 2 juni 2026 Devin Desktop
heet — gebruikt mcpServers, de sleutel die de meeste andere clients aanhouden.
Staat de sleutel verkeerd, dan start de client stilletjes op zonder tools en
zonder foutmelding.
De server zelf verandert daarbij niet. Een lokale MCP-server is een programma dat
via stdio wordt gestart met een commando en een paar argumenten, en elk van deze
editors draait hetzelfde binaire bestand op dezelfde manier. Wat u in elke editor
eigenlijk doet, is twee waarden vastleggen — command en args — binnen de
configuratievorm van die editor. Deze handleiding geeft per editor het exacte
bestand, de exacte sleutel en de exacte controlestap, alles op 14 augustus 2026
gecontroleerd in de documentatie van de leveranciers.
Is het protocol zelf nieuw voor u, dan behandelt wat een MCP-server is eerst de begrippen. Voor Claude en Cursor bestaan eigen handleidingen en meestal volstaat één klik; dit artikel gaat over de drie waarvoor dat niet geldt.
Elke lokale MCP-server wordt door dezelfde twee waarden beschreven:
command = "/absolute/path/to/the/executable"
args = ["--some-flag"]
Dat is de hele inhoud. Een absoluut pad weegt zwaarder dan het lijkt: de editor
start het proces zelf, vaak zonder uw login-shell, dus alles wat op PATH of op
een shell-alias leunt werkt in uw terminal en faalt in de client. Kopieer het
volledige pad.
Al het overige in deze handleiding is verpakking — in welk bestand de twee waarden terechtkomen en hoe de omliggende sleutel heet.
servers, niet mcpServersVS Code leest de MCP-configuratie uit een bestand met de naam mcp.json, op een
van twee plekken:
.vscode/mcp.json — reist mee met de repository en is dus de
juiste plek voor servers die het hele team moet hebben.mcp.json die u opent met het commando
MCP: Open User Configuration uit de Command Palette — de juiste plek voor
persoonlijke gegevensbronnen.Op het hoogste niveau staan servers en verder de optionele secties inputs en
sandbox. Een lokale server ziet er zo uit:
{
"servers": {
"my-server": {
"type": "stdio",
"command": "/absolute/path/to/the/executable",
"args": ["--mcp"]
}
}
}
Twee dingen verrassen wie van een andere client overstapt. Ten eerste is de
sleutel echt servers — een geplakt mcpServers-blok is geen fout die VS Code
meldt, het is gewoon een sleutel die het niet leest. Ten tweede beperkt VS Code
één chatverzoek tot 128 ingeschakelde tools, dus op een machine met veel
geregistreerde servers moeten er misschien een paar uit voordat de uwe bereikbaar
is; de knop Configure Tools in de Chat-weergave is daarvoor de plek.
Er is ook een draagbare vorm: voor configuratie die u deelt met de Agent Host en
de overige Copilot-tooling documenteert VS Code een .mcp.json in de werkruimte
of een ~/.copilot/mcp-config.json in het gebruikersprofiel, die de Agent Host
zelf leest.
Controleren: voer MCP: List Servers uit vanuit de Command Palette, kies uw server en lees het logboek via Show Output. Een server die niet kon starten, meldt dat daar, meestal met het pad dat hij niet kon uitvoeren.
Zed noemt MCP-servers context servers, en de instellingssleutel volgt daarop:
context_servers. Open het instellingenbestand met de actie
zed: open settings file in plaats van naar het pad te zoeken, en voeg toe:
{
"context_servers": {
"my-server": {
"command": "/absolute/path/to/the/executable",
"args": ["--mcp"],
"env": {}
}
}
}
Servers op afstand gebruiken url en optioneel headers in hetzelfde blok,
waardoor context_servers de enige plek is waar beide transporten wonen. Zed
heeft ook een route via de interface: Settings → AI → MCP Servers, dan
Add Server → Add Local Server, wat dezelfde regel voor u schrijft. Veel
gangbare servers zijn daarnaast als Zed-extensie verpakt en vanaf dat scherm te
installeren — maar een server die in een desktopapplicatie meekomt, staat niet in
die lijst, en dan is de handmatige regel hierboven de weg.
Controleren: open Settings → AI → MCP Servers en kijk naar de indicator naast uw server. Een groene stip met de tooltip Server is active betekent dat de handshake is gelukt.
Dit is het deel dat de meeste handleidingen op internet nog niet hebben ingehaald.
Cognition heeft Windsurf op 2 juni 2026 hernoemd tot Devin Desktop,
uitgeleverd als een gewone over-the-air update — geen herinstallatie, geen
migratiewizard, en abonnementen, extensies en sneltoetsen gingen ongewijzigd mee.
De oude marketingdomeinen leiden nu door naar devin.ai en de documentatie staat
op docs.devin.ai.
Voor MCP is het praktische gevolg dat er nu twee mogelijke bestemmingen zijn, en welke de juiste is hangt af van de agent waarmee u praat:
| Agent | MCP-configuratiebestand | Sleutel op hoogste niveau |
|---|---|---|
| Cascade (oud) | ~/.codeium/windsurf/mcp_config.json |
mcpServers |
| Devin Local (huidig) | ~/.config/devin/mcp_config.json |
mcpServers |
De documentatie van Cascade beschrijft nog steeds het pad
~/.codeium/windsurf/ — de agent bleef tot 1 juli 2026 beschikbaar zodat mensen
stapsgewijs konden overstappen. Zijn opvolger, Devin Local, is een
herschrijving in Rust die Cognition omschrijft als tot 30% zuiniger met tokens en
met ondersteuning voor subagents, en hij is de standaardagent voor nieuwe
tabbladen. Devin Local leest het Cascade-bestand niet; hij gebruikt de
configuratie van de Devin CLI, waarin projectgebonden servers in
.devin/mcp_config.json staan en persoonlijke met API-sleutels in het door
gitignore uitgesloten .devin/mcp_config.local.json.
Hebt u maanden geleden een server toegevoegd en ziet uw agent hem opeens niet meer, dan is dit de waarschijnlijkste reden: het bestand klopt nog, de agent die het leest is veranderd.
Nog een grens die het weten waard is: Cascade houdt de agent op maximaal 100 tools tegelijk. Net als bij VS Code kan een volle configuratie de tools van uw server buiten bereik duwen zonder dat er iets kapot lijkt.
Controleren: klik op het icoon MCPs rechtsboven in het Cascade-paneel om de MCP-instellingenpagina te openen, waar de tools van elke server staan opgesomd en afzonderlijk uit te zetten zijn. Een server zonder tools in die lijst is niet gestart.
| VS Code | Zed | Devin Desktop (Windsurf) | |
|---|---|---|---|
| Bestand | .vscode/mcp.json, of mcp.json in het gebruikersprofiel |
instellingenbestand (zed: open settings file) |
~/.codeium/windsurf/mcp_config.json (Cascade) of ~/.config/devin/mcp_config.json (Devin Local) |
| Sleutel | servers |
context_servers |
mcpServers |
type: stdio nodig |
Ja | Nee | Nee |
| Route via de interface | MCP: Add Server | Settings → AI → MCP Servers | MCPs-icoon in het Cascade-paneel |
| Toolplafond | 128 per verzoek | Niet gedocumenteerd | 100 in totaal (Cascade) |
De ene rij om twee keer te lezen is de rij met de sleutel. Elk ander verschil kondigt zichzelf aan met een foutmelding; een verkeerde sleutel niet.
Claude Desktop, Claude Code en Cursor gebruiken alle drie mcpServers en bewaren
het bestand op een voorspelbare plek — respectievelijk
claude_desktop_config.json in de supportmap van de app, ~/.claude.json en
~/.cursor/mcp.json. Door die eenvormigheid leveren zoveel apps een installatie
met één klik voor precies die drie en houden ze daarna op.
De drie editors uit deze handleiding wijken elk op één as af: VS Code op de naam van de sleutel, Zed op zowel de naam als het vocabulaire, Devin Desktop op de locatie van het bestand na de naamswijziging. Niets ervan is moeilijk, maar niets ervan valt te raden — en precies daarom levert het rechtstreeks kopiëren van JSON uit de README van een leverancier zo vaak een client op die zonder tools start.
Start de editor opnieuw op nadat u een van deze bestanden met de hand hebt bewerkt. De meeste clients lezen de MCP-configuratie bij het opstarten, en een configuratie die klopt maar nooit opnieuw is gelezen, is veruit de meest voorkomende oorzaak van "de assistent ziet mijn gegevens niet".
Speak-Y levert zijn MCP-server mee in de macOS-app, dus er is niets uit npm te installeren en geen token uit te geven. Vanuit Instellingen → Integraties schrijft Installeren naast een herkende client de configuratie voor Claude Code, Claude Desktop en Cursor, elk in de eigen vorm van die client. VS Code, Zed en Devin Desktop staan niet in die lijst — daarvoor kopieert u dezelfde twee waarden naar de vormen hierboven:
command = "/Applications/Speak-Y.app/Contents/MacOS/Speak-Y"
args = ["--mcp"]
--read-only als tweede argument start de server zonder alle tools die gegevens
wijzigen — handig wanneer de agent van een editor wel transcripten mag
doorzoeken, maar nooit tags, sprekersnamen of teamkanalen mag
aanraken. Installaties met één klik zetten die vlag bewust niet: alleen-lezen is
een keuze, dus maakt u hem uitdrukkelijk.
Wat de assistent vervolgens krijgt, zijn dertien tools: vijf die lezen — zoeken door opnames, transcripten, samenvattingen, actiepunten, tags — en acht die iets wijzigen, die aan de client als gegevenswijzigend worden aangemerkt zodat hij eerst vraagt voordat hij ze aanroept. Lezen gebeurt lokaal tegen de bibliotheek op uw machine; de wijzigende opdrachten lopen via de draaiende app en worden vastgelegd op een plek waar u ze achteraf kunt teruglezen. De server is gratis in elk abonnement.
Dat dit in een editor zwaarder weegt dan in een chat-app, komt door context. Een codeeragent die kan lezen wat er dinsdag in het gesprek werkelijk is besloten, hoeft die beslissing niet opnieuw in een prompt getypt te krijgen — hetzelfde argument als in Cursor en vergadercontext, dat onveranderd geldt voor VS Code en Zed zodra de configuratie hierboven staat.
Is uw server geregistreerd en meldt de assistent nog steeds niets, dan ligt het bijna altijd aan een van vier dingen: de editor is niet opnieuw gestart, het pad is verouderd na een app-update, het toolplafond zit vol, of de sleutelnaam klopt niet voor die client. Loop ze in die volgorde na voordat u iets herschrijft.
VS Code bewaart MCP-servers in een bestand met de naam mcp.json — of .vscode/mcp.json binnen een werkruimte, of een mcp.json in uw gebruikersprofiel, die u opent met het commando MCP: Open User Configuration. Anders dan bij de meeste clients is de sleutel op het hoogste niveau servers en niet mcpServers.
Zed gebruikt context_servers in het instellingenbestand, niet mcpServers. Een regel voor een lokale server neemt command, args en env; een server op afstand neemt url en headers. Open het bestand met de actie zed: open settings file, of voeg de server toe via Settings → AI → MCP Servers.
Nee. Cognition heeft Windsurf op 2 juni 2026 hernoemd tot Devin Desktop, uitgeleverd als een over-the-air update waarbij abonnementen, extensies en instellingen intact bleven. Cascade, de agent die ~/.codeium/windsurf/mcp_config.json las, bleef beschikbaar tot 1 juli 2026; zijn opvolger Devin Local leest in plaats daarvan de configuratiebestanden van de Devin CLI.
Nee. Hetzelfde binaire bestand van een stdio-server werkt in elke client — wat verschilt is het bestand waarin u hem vastlegt en de naam van de sleutel op het hoogste niveau. U schrijft command en args één keer en plakt diezelfde twee waarden in de configuratievorm van elke editor.
Elke client heeft zijn eigen indicator: in VS Code voert u MCP: List Servers uit vanuit de Command Palette en gebruikt u Show Output voor de logs, in Zed opent u Settings → AI → MCP Servers en let u op een groene stip met de tekst Server is active, en in Devin Desktop opent u het MCPs-icoon in het Cascade-paneel om de tools van de server opgesomd te zien.