Wat is MCP? Het Model Context Protocol uitgelegd
In het kort
- Het Model Context Protocol (MCP) is een open protocol dat AI-applicaties met externe tools en data verbindt; Anthropic introduceerde het op 25 november 2024 en doneerde het in december 2025 aan de Agentic AI Foundation van de Linux Foundation.
- Een host zoals Claude Code draait één MCP-client per server. Servers bieden tools, resources en prompts aan via stdio (lokaal) of Streamable HTTP (remote).
- Volgens de specificatie moeten hosts expliciete toestemming van de gebruiker krijgen voordat ze een tool aanroepen, dus bevestig schrijfacties en geef elke server een sleutel met alleen de scopes die hij nodig heeft.
- Nodion host een remote MCP-server op mcp.nodion.net/mcp waarmee coding agents apps kunnen deployen en beheren; de set-up staat op Koppel Nodion aan je AI-agent.
MCP, het Model Context Protocol, is een open protocol dat AI-applicaties op een gestandaardiseerde manier verbindt met externe tools en data. Een dienst beschrijft als MCP-server één keer wat hij aanbiedt, en compatibele clients kunnen die gebruiken, van Claude Code en Cursor tot Codex en VS Code, zolang ze het transport, de autorisatie en de protocolversie ondersteunen. Anthropic introduceerde MCP op 25 november 2024. In december 2025 droeg het bedrijf het protocol over aan de Agentic AI Foundation, een directed fund onder de Linux Foundation.
Het probleem dat MCP oplost
Een taalmodel weet alleen wat in zijn context staat. Om een ticket te lezen, een database te bevragen of een deployment te starten, heeft een AI-applicatie een integratie met dat systeem nodig. Vóór MCP bouwde elke applicatie zijn eigen integratie. In de woorden van Anthropic: “Every new data source requires its own custom implementation, making truly connected systems difficult to scale.” Met andere woorden: elke nieuwe databron vroeg om een eigen integratie, waardoor echt verbonden systemen moeilijk schaalbaar waren.
MCP vervangt die losse integraties door één protocol. Een dienst implementeert één MCP-server, een AI-applicatie implementeert MCP-clients, en beide kanten werken samen met compatibele tegenhangers, binnen de grenzen van het ondersteunde transport, de autorisatie, de versie en de features. Volgens de specificatie is MCP geïnspireerd op het Language Server Protocol, dat de ondersteuning van programmeertalen in ontwikkeltools standaardiseerde. In december 2025 noemde Anthropic ChatGPT, Cursor, Gemini, Microsoft Copilot en Visual Studio Code als producten die MCP hadden omarmd.
Hosts, clients en servers
- Host: de AI-applicatie waarin je werkt, zoals Claude Code, Claude Desktop of VS Code. De host coördineert een of meer clients.
- Client: een component in de host die de verbinding met één server onderhoudt. De host maakt per server één client aan.
- Server: het programma dat tools en context levert. Het draait op je eigen machine (een lokale server) of als dienst op internet (een remote server).
Client en server wisselen JSON-RPC 2.0-berichten uit. Als je Claude Code met Nodion verbindt, is Claude Code de host, draait die één client voor die verbinding, en antwoordt de gehoste MCP-server van Nodion.
Wat een server biedt: tools, resources en prompts
- Tools: functies die het model kan aanroepen om iets te doen, zoals een API-call of een databasequery. Elke tool heeft een naam, een beschrijving en een JSON Schema voor de input. Tools worden door het model aangestuurd: het model bepaalt op basis van je verzoek wanneer het er een aanroept.
- Resources: data die het model context geven, zoals bestandsinhoud, databaserecords of API-responses.
- Prompts: herbruikbare templates om met het model te werken, zoals een systeemprompt of few-shot-voorbeelden.
De client ontdekt tools met tools/list en voert er een uit met tools/call. Dit is de call uit de specificatie, zonder de metadata die bij elk request worden meegestuurd:
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "get_weather",
"arguments": { "location": "New York" }
}
} Een server kan de gebruiker ook om input vragen. Met elicitation beantwoordt de server een request met een resultaat dat aangeeft dat hij meer informatie nodig heeft; de client vraagt die informatie aan de gebruiker en stuurt het request opnieuw, met het antwoord. In de huidige revisie starten servers niet zelf requests.
Transporten: stdio en Streamable HTTP
MCP definieert twee standaardtransporten, en eigen transporten zijn ook toegestaan:
- stdio: de host start de server als lokaal proces en communiceert ermee via standaardinvoer en -uitvoer. Dat past bij tools die op je eigen machine werken, zoals een bestandssysteemserver. Een lokale server bedient meestal één client.
- Streamable HTTP: de client verstuurt berichten met HTTP POST, en de server kan antwoorden streamen met Server-Sent Events. Remote servers gebruiken dit transport. Het ondersteunt standaard HTTP-authenticatie zoals bearer-tokens, API-sleutels en eigen headers, en het protocol raadt OAuth aan om tokens te verkrijgen.
De huidige revisie van de specificatie is gedateerd op 2026-07-28. Daarin is het protocol stateless: elk request bevat de protocolversie en de capabilities die het nodig heeft, zodat een server elk request op zichzelf kan afhandelen. De revisie beschrijft ook optionele extensies zoals Tasks en MCP Apps; de details staan in de specificatie.
Waarom MCP belangrijk is voor coding agents
Coding agents lezen, schrijven en testen de code in je repository al. Veel van het werk rond die code gebeurt in andere systemen: de issuetracker, de database, de foutmonitoring en het hostingplatform. Met MCP kan de agent ook in die systemen werken.
- Eén integratie voor veel agents: een dienst met een MCP-server werkt met compatibele clients zoals Claude Code, Cursor en Codex, zonder aparte plug-in voor elke client, zolang ze het transport, de autorisatie en de features ondersteunen.
- Verzoeken in gewone taal: namen, beschrijvingen en inputschema's van tools vertellen het model wat het kan doen, zodat “laat me de laatste fouten zien” de juiste toolcall wordt.
- Niets te installeren voor remote servers: voor een gehoste server heb je alleen de URL en een sleutel of login nodig.
Beveiliging: wat je controleert voordat je een server verbindt
MCP geeft een model toegang tot echte systemen, en de specificatie is daar direct over: tools staan voor het uitvoeren van willekeurige code, en hosts moeten expliciete toestemming van de gebruiker krijgen voordat ze een tool aanroepen. In de praktijk:
- Bevestig schrijfacties. Laat een mens het laatste woord houden (human in the loop): de specificatie vraagt applicaties te tonen welke tools beschikbaar zijn en om bevestiging te vragen, en de permissie-instellingen van je client bepalen of dat ook gebeurt. Vertrouw niet op een flag aan serverzijde die de agent zelf kan zetten.
- Gebruik sleutels met minimale rechten. Geef elke server toegangsgegevens met alleen de scopes die hij nodig heeft, en gebruik één sleutel per agent, zodat je die afzonderlijk kunt intrekken. De beveiligingsrichtlijnen van de specificatie noemen dit scope minimization.
- Verbind alleen vertrouwde servers. Clients moeten beschrijvingen en annotaties van tools als onbetrouwbaar behandelen, tenzij ze van een vertrouwde server komen.
- Controleer lokale servers. Een lokale server draait met dezelfde rechten als de client die hem start. Lees het exacte commando voordat je er een toevoegt.
- Houd secrets uit de chat. Tokens horen in de clientconfiguratie, niet in een prompt.
De gehoste MCP-server van Nodion
Nodion host een remote MCP-server op https://mcp.nodion.net/mcp. Je agent gebruikt hetzelfde account als jij in het dashboard, en er is geen lokale daemon om te installeren. Eenmaal verbonden vraag je in gewone taal: maak een project aan, deploy een app vanuit de huidige repository, koppel een database, stel omgevingsvariabelen in, lees logs en controleer of een release live staat. Of je vóór elke toolcall om toestemming wordt gevraagd, hangt af van de permissie-instellingen van je client. Nodion vereist voor persoonlijke sleutels ook een expliciete bevestigingsflag op schrijftools, maar die flag zet de agent zelf, dus hij vervangt geen menselijke controle.
Claude Code verbindt met één commando en een persoonlijke sleutel uit Account → Security:
claude mcp add nodion --transport http https://mcp.nodion.net/mcp \
--header "Authorization: Bearer nodion_your_key" Persoonlijke sleutels hebben scopes zoals read, write, deploy, env:read en logs:read, en je kunt een sleutel beperken tot bepaalde projecten. Een agent die alleen fouten moet onderzoeken, heeft geen write of deploy nodig.
Cursor gebruikt hetzelfde soort sleutel. Claude Desktop, ChatGPT en Codex verbinden in plaats daarvan via OAuth: je logt in op de autorisatiepagina van Nodion en koppelt een of meer projecten. Secrets blijven in het dashboard, en de verbinding verzamelt geen wachtwoorden of omgevingswaarden in de chat. Windsurf, Zed, VS Code Copilot en OpenCode gebruiken dezelfde server-URL, https://mcp.nodion.net/mcp.
Op Koppel Nodion aan je AI-agent lees je hoe je elke client instelt; de volledige referentie staat in de MCP-documentatie.
Veelgestelde vragen
Wat is MCP in AI?
MCP, het Model Context Protocol, is een open protocol om AI-applicaties met externe tools en data te verbinden. Een server beschrijft zijn tools, resources en prompts, en compatibele hosts zoals Claude Code of Cursor kunnen die gebruiken als ze het transport, de autorisatie en de vereiste features ondersteunen.
Wie heeft het Model Context Protocol gemaakt?
Anthropic introduceerde MCP op 25 november 2024 als open standaard. In december 2025 doneerde Anthropic het aan de Agentic AI Foundation, een directed fund onder de Linux Foundation.
Wat is het verschil tussen een MCP-server en een API?
Een API is de eigen interface van een dienst. Een MCP-server beschrijft acties in een standaardformaat, met een naam, een beschrijving en een inputschema voor elke tool, zodat compatibele MCP-clients ze kunnen ontdekken en aanroepen zonder eigen integratiecode.
Is MCP veilig om te gebruiken?
Dat hangt af van de servers die je verbindt en de toegang die je ze geeft. De specificatie vereist expliciete toestemming van de gebruiker voordat een tool draait; verbind alleen vertrouwde servers, lees elke bevestiging voor schrijfacties en gebruik sleutels met zo beperkt mogelijke scopes.