AI 11 min leestijd

Je website beheren met AI: een MCP-server voor je CMS.

Dit is de grootste verschuiving in websitebeheer sinds het CMS zelf: je klikt niet meer, je praat met je website. Een Model Context Protocol-server bovenop je CMS laat een AI-assistent blogartikelen schrijven, SEO verbeteren, content audits draaien en contactaanvragen afhandelen — in gewone taal, en met de techniek die op dit moment de standaard zet.

Jasper Koers ·

In het kort

  • Een MCP-server bovenop je CMS verandert websitebeheer van klikken naar praten in gewone taal
  • Dezelfde validatie en business-logica als je CMS — de AI krijgt geen extra rechten, alleen een nieuwe interface
  • Veilig by design: concept-first, publiceren pas na expliciete bevestiging, geen verwijder-tool
  • Generieke tools op een contentregistry beheren paginas, blogs, cases, diensten en producten in één keer
  • Geen CMS-training meer nodig: nieuwe medewerkers beschrijven wat ze willen, de assistent doet de rest

Van klikken in een CMS naar praten met je website

Kort antwoord

Een MCP-server bovenop je CMS laat je je website beheren met een AI-assistent in gewone taal. In plaats van inloggen, klikken en formulieren invullen, vraag je: "Schrijf een blogartikel over hybride events en zet het klaar als concept" of "Controleer de hele site op ontbrekende SEO-teksten". De assistent roept achter de schermen de juiste tools aan — met exact dezelfde validatie, statusregels en veiligheidsgrenzen als je CMS. Je bestaande CMS blijft gewoon werken; dit is een extra, conversatie-gestuurde manier om dezelfde site te beheren.

Bijna dertig jaar lang is het content-managementsysteem de standaard geweest: een beheeromgeving met menu's, formulieren en knoppen waar je content invoert. Het werkt, maar het kost tijd en training. Wie zelden inlogt, moet elke keer opnieuw uitzoeken waar de juiste knop zit. En veel werk is repetitief: een blogartikel opmaken, meta-teksten invullen, controleren of er pagina's zonder beschrijving rondzwerven.

Dat model staat nu op een kantelpunt. Het Model Context Protocol (MCP) — een open standaard die Anthropic eind 2024 introduceerde en die in razend tempo de facto de standaard is geworden voor hoe AI met externe systemen praat — maakt een fundamenteel andere manier van werken mogelijk. Met een MCP-server bovenop je CMS bedien je je website niet langer met de muis, maar met taal. Je beschrijft wat je wilt, en een AI-assistent voert het uit. Dit is geen toekomstmuziek of demo: het is de huidige stand van de techniek, en wij bouwen het vandaag al voor klanten.

In dit artikel laten we zien hoe dat werkt, aan de hand van een MCP-server die wij bouwden voor het CMS van een audiovisueel productiebedrijf — een echte, in gebruik zijnde implementatie.

Wat is MCP, kort uitgelegd

MCP is een open standaard die AI-modellen verbindt met externe tools en data. Een MCP-server publiceert drie soorten bouwstenen via een gestandaardiseerd endpoint:

  • Tools — Acties die de AI kan uitvoeren: content aanmaken, SEO bijwerken, contactaanvragen ophalen.
  • Resources — Leesbare context die de AI raadpleegt voordat hij iets doet: welke contenttypes bestaan er, welke blokken zijn beschikbaar, wat zijn de SEO-richtlijnen.
  • Prompts — Kant-en-klare stappenplannen, bijvoorbeeld "nieuwe blogpost schrijven", die de assistent stap voor stap door een taak leiden.

Het verschil met een gewone API-koppeling zit in de beschrijvingen. Elke tool draagt een rijke, in het Nederlands geschreven uitleg met zich mee, zodat de AI zelf begrijpt wanneer hij hem moet inzetten en wat de parameters betekenen. De assistent ontdekt de tools automatisch — je hoeft niets hard te coderen aan de clientkant.

Een MCP-server bovenop een bestaand CMS

De server die wij bouwden draait op Laravel met het officiële laravel/mcp-pakket. Het belangrijkste uitgangspunt: de MCP-server is geen tweede systeem, maar een tweede interface op hetzelfde systeem. Hij hergebruikt dezelfde Eloquent-modellen, dezelfde validatieregels en dezelfde business-logica als de bestaande CMS-beheeromgeving.

Concreet bestaat hij uit een paar onderdelen:

  • Een server-class die alle tools, resources en prompts registreert en de spelregels in het Nederlands meegeeft aan de AI (concept-first werken, publiceren met bevestiging, niet verwijderen).
  • Een contentregistry die per type — pagina, blogartikel, blogcategorie, case, dienst, teamlid, product en productcategorie — beschrijft welke velden zijn toegestaan, welk statusmodel geldt, en welke velden vergrendeld zijn. Die regels zijn gespiegeld aan de bestaande CMS-formulieren, zodat de AI nooit iets kan opslaan wat het CMS zelf zou weigeren.
  • Generieke tools die op die registry draaien. Eén set tools (aanmaken, ophalen, bijwerken, status wijzigen) werkt zo voor álle contenttypes tegelijk.
  • Een HTTP-endpoint waarop de server luistert, afgeschermd met authenticatie en rate limiting.

Het mooie van die registry-aanpak: een nieuw contenttype toevoegen is een kwestie van een definitie aanvullen. De generieke tools werken dan meteen, zonder dat je voor elk type aparte code schrijft.

Wat kun je er concreet mee?

De server die wij bouwden biedt eenentwintig tools, verdeeld over zeven groepen. Hieronder de praktijk, met voorbeelden van prompts die je letterlijk zo aan je AI-assistent kunt geven.

Blogartikelen schrijven, opmaken en publiceren

Dit is de meest gebruikte toepassing. De assistent kan een blogcategorie kiezen, een artikel als concept aanmaken, het opmaken met inhoudsblokken (een quote, statistieken, rijke tekst) en er SEO-metadata bij genereren. Er is zelfs een kant-en-klaar stappenplan-prompt die de hele route afloopt — van categorie kiezen tot preview delen.

"Schrijf een blogartikel over hybride events, maak het op met een quote en een statistiekenblok, en zet het klaar als concept."

De assistent schrijft de tekst, kiest de passende categorie, vult de blokken en levert een preview-URL op. Publiceren gebeurt pas als jíj akkoord geeft.

SEO-teksten schrijven en direct opslaan

Voor elk item kan de assistent meta-titel, meta-omschrijving en OpenGraph-teksten opstellen — binnen de juiste tekenlimieten, in de huisstijl. De voorstellen verschijnen eerst als dry-run; pas na jouw goedkeuring worden ze opgeslagen.

"Genereer SEO-teksten voor de nieuwe dienstpagina en laat ze me eerst zien voordat je ze opslaat."

Content audits uitvoeren

Een aparte audit-tool scant alle content op ontbrekende, te korte of te lange meta- en OG-teksten en geeft een rapport per type. Zo zie je in één oogopslag waar de SEO-gaten zitten — en kun je ze in batches laten oplossen.

"Controleer de hele site op ontbrekende of te lange SEO-metadata en geef me een overzicht per contenttype."

De assistent draait de audit, vat de bevindingen samen ("twaalf pagina's zonder meta-omschrijving, drie te lange titels") en stelt voor om ze in groepjes van maximaal tien tegelijk aan te pakken.

Pagina's bouwen met blokken

Een complete landingspagina opbouwen kan ook. De assistent leest eerst de sitestructuur en de beschikbare bloktypes, stelt een blokcompositie voor volgens de bestaande paginapatronen (hero, intro, inhoudsblokken, call-to-action) en bouwt de pagina na jouw akkoord op.

"Bouw een nieuwe dienstpagina voor LED-schermverhuur, gericht op eventbureaus. Stel eerst de opbouw voor."

Producten en diensten beheren

Diensten, producten en hun categorieën beheer je met dezelfde generieke tools als content. Belangrijk detail: velden die uit een gekoppeld systeem worden gesynchroniseerd, zijn vergrendeld — de AI kan ze niet overschrijven, omdat de synchronisatie ze toch weer zou terugzetten. Zo blijven beide bronnen consistent.

"Maak een nieuwe dienst aan voor 'streaming-productie op locatie' met deze omschrijving, als concept."

Contactaanvragen bekijken en afhandelen

De assistent kan inzendingen van het contactformulier ophalen, filteren op afgehandeld-status of zoekterm, het volledige bericht openen en een aanvraag als afgehandeld markeren.

"Toon de laatste tien contactaanvragen die nog niet zijn afgehandeld."

Menu's, instellingen en redirects

Ook het minder zichtbare beheerwerk gaat via taal: navigatiemenu's aanpassen, site-instellingen zoals contactgegevens of social-links wijzigen, en URL-redirects aanmaken (301, 302, 308 of 410, met een loop-controle erbij). Allemaal met dezelfde regels en cache-invalidatie als het CMS.

"Maak een 301-redirect van de oude offerte-pagina naar de nieuwe aanvraagpagina."

Veilig by design

Een AI je website laten beheren klinkt spannend. Daarom zit de veiligheid in het ontwerp, niet in goed vertrouwen. De belangrijkste grenzen:

  • Concept-first — Nieuwe content begint altijd als concept en is niet zichtbaar op de site.
  • Publiceren met bevestiging — Live zetten kan alleen via een aparte tool met een expliciete bevestigingsparameter. Een terloopse opdracht zet dus nooit per ongeluk iets online.
  • Geen verwijder-tool — Verwijderen bestaat simpelweg niet. Het alternatief is archiveren of op inactief zetten, zodat er nooit content onomkeerbaar verdwijnt.
  • Vergrendelde velden — Gesynchroniseerde data en speciale velden (zoals welke pagina de homepage is) zijn niet muteerbaar via MCP.
  • Geen uploads via de AI — Nieuwe mediabestanden upload je via het CMS; de tools accepteren alleen bestaande paden. Zo houd je grip op wat er binnenkomt.
  • Server-side validatie — Elke tool valideert input net zo streng als een webformulier. Ongeldige of onbekende velden worden geweigerd.
  • Live-impact wordt gemeld — Elke schrijfactie meldt of iets meteen zichtbaar is, met een preview- of live-URL erbij.

Het resultaat: de AI kan niets doen wat een ingelogde beheerder niet ook zou mogen — en bij de meest ingrijpende acties (publiceren) heeft hij jouw expliciete akkoord nodig.

Toegang regelen met OAuth 2.1

Authenticatie verloopt via OAuth 2.1, gebouwd op Laravel Passport. Er zijn geen losse API-keys die rondslingeren: een CMS-gebruiker logt in met het bestaande account, en het OAuth-token is in feite een vertaling van dat account. De AI-client — Claude, Cursor of een andere — registreert zichzelf via dynamic client registration en doorloopt de inlogflow. Tokens hebben een beperkte levensduur en zijn in te trekken.

Daar bovenop zit rate limiting (een maximum aantal verzoeken per minuut per gebruiker), zodat een op hol geslagen client de boel niet kan platleggen. Wie meer wil weten over deze beveiligingslaag, leest ons artikel over security by design in Laravel.

Hoe je het in de praktijk gebruikt

Verbinden is eenvoudig. In Claude voeg je de server toe als custom connector met de URL van het endpoint en log je in met je CMS-account. In Claude Code gaat dat met één commando, en in Cursor of VS Code voeg je een MCP-server van het type HTTP toe met dezelfde URL. Daarna verschijnen alle tools automatisch in de assistent.

Voor de gebruiker zelf is er geen technische drempel. Iemand die nog nooit in het CMS heeft gewerkt, hoeft geen menu's te leren kennen — die beschrijft gewoon wat hij wil. De assistent raadpleegt onder water de juiste resources (welke velden mag dit type hebben, wat zijn de SEO-limieten) voordat hij iets aanmaakt, en houdt zich aan de spelregels die in de server staan ingebakken.

Waarom dit een omslagpunt is

Het is verleidelijk om dit af te doen als "weer een AI-feature". Dat is het niet. Wat hier gebeurt, is dat de interface zelf verdwijnt. Decennialang was de manier waarop je software bediende een vast gegeven: iemand ontwierp schermen, knoppen en formulieren, en jij leerde die uit je hoofd. Met MCP wordt de interface natuurlijke taal — en daarmee verandert de verhouding tussen mens en software fundamenteel.

Een paar dingen maken dit het huidige hoogtepunt van wat er kan:

  • Het is een open standaard, geen leverancierstruc. MCP is niet gebonden aan één AI-aanbieder of één platform. Dezelfde server werkt met Claude, met Cursor, met VS Code en met elke toekomstige client die de standaard ondersteunt. Je bouwt dus geen wegwerp-integratie, maar legt een fundament dat meebeweegt met een markt die nog volop in beweging is.
  • De AI redeneert, hij volgt geen script. Een klassieke automatisering doet exact wat je vooraf hebt vastgelegd. Een AI-assistent met MCP-tools begrijpt je intentie, kiest zelf welke tools hij in welke volgorde inzet, raadpleegt onderweg de juiste context en past zich aan als de situatie afwijkt. Vraag "ruim de SEO op" en hij draait een audit, vat de problemen samen, stelt verbeteringen voor en wacht op je akkoord — zonder dat iemand die stappen vooraf hoefde te programmeren.
  • Het bouwt voort op wat er al staat. Omdat een MCP-server dezelfde modellen, validatie en logica hergebruikt als je bestaande systeem, is dit geen dure herbouw. Je zet een nieuwe, slimme deur op het huis dat er al staat.

Dit is precies het soort verschuiving waar het web elke vijftien jaar doorheen gaat — van statische pagina's naar het CMS, van desktop naar mobiel, en nu van klikken naar praten. Wie er vroeg bij is, heeft een voorsprong die zich vertaalt in snelheid en wendbaarheid. Lees ook hoe ditzelfde protocol een brug vormt naar al je bedrijfsdata.

De resources en prompts die de assistent slim maken

Een tool aanbieden is één ding; de AI hem op het juiste moment correct laten gebruiken is een ander. Daarom levert de server naast tools ook resources en prompts mee.

De resources zijn leesbare context die de assistent raadpleegt vóórdat hij iets doet: een overzicht van de toegestane contenttypes en hun velden, de beschikbare bloktypes, de SEO-richtlijnen (tekenlimieten, schrijfstijl) en de sitestructuur. Zo voorkomt de assistent dat hij een veld verzint dat niet bestaat, of een meta-titel schrijft die te lang is.

De prompts zijn kant-en-klare stappenplannen voor terugkerende klussen — "nieuwe blogpost", "SEO verbeteren", "pagina bouwen". Kies je zo'n prompt, dan loopt de assistent een doordachte route af: eerst de juiste context lezen, dan een voorstel doen, dan pas (na jouw akkoord) uitvoeren. Het is de vakkennis van een ervaren redacteur, vastgelegd zodat de AI hem elke keer consequent toepast.

Wat dit verandert aan websitebeheer

Drie dingen verschuiven fundamenteel:

  • Snelheid — Een blogartikel schrijven, opmaken, van SEO voorzien en klaarzetten is één gesprek in plaats van een halfuur klikken door formulieren.
  • Geen training meer nodig — De interface ís natuurlijke taal. Nieuwe medewerkers zijn meteen productief, zonder handleiding.
  • Minder vergeten werk — Repetitieve controles zoals "staan er pagina's zonder meta-omschrijving?" worden een vraag van vijf seconden in plaats van een klus die niemand doet.

Het CMS verdwijnt daarmee niet. Voor visueel werk — een pagina precies zien zoals hij wordt, media uploaden, fijn slepen met blokken — blijft de grafische omgeving prettiger. MCP is geen vervanging, maar een tweede manier van werken die naast je bestaande beheeromgeving staat. Voor de ene taak pak je de muis, voor de andere praat je gewoon.

Mijn kijk hierop

Wat me het meest opvalt bij het bouwen van zo'n server, is dat het echte werk niet in de AI zit, maar in de grenzen. Een model dat content kan aanmaken is binnen een dag werkend. Maar een server die je met een gerust hart aan een klant geeft — die concept-first werkt, niet kan verwijderen, gesynchroniseerde velden respecteert en bij publiceren om bevestiging vraagt — dáár zit het vakmanschap. Je ontwerpt niet zozeer wat de AI kán, maar vooral wat hij niet kan.

En precies omdat de MCP-server dezelfde validatie en logica hergebruikt als het CMS, is het verrassend weinig extra code. Je legt geen tweede systeem aan; je zet een nieuwe deur op het systeem dat er al staat. Dat maakt het een aantrekkelijke uitbreiding voor vrijwel elk maatwerk-CMS dat wij bouwen.

— Jasper

Zo helpt Coding Agency hierbij

Wij bouwen MCP-servers bovenop bestaande en nieuwe CMS'en op maat, zodat je je website kunt beheren met een AI-assistent zonder in te leveren op veiligheid. Met een doordacht tool-ontwerp, een contentregistry die meegroeit met je site, OAuth-authenticatie en duidelijke spelregels die in de server zijn ingebakken. Hoe MCP breder als brug naar je bedrijfssystemen werkt, lees je in ons artikel over praten met je data.

Benieuwd hoe je jouw website met AI kunt beheren? Neem contact op voor een vrijblijvend gesprek.

Veelgestelde vragen

Een MCP-server (Model Context Protocol) is een laag bovenop je CMS die gestructureerde tools aanbiedt aan een AI-assistent. In plaats van zelf in te loggen en te klikken, geef je je AI-assistent — bijvoorbeeld Claude — opdrachten in gewone taal: een blogartikel schrijven, SEO controleren of contactaanvragen ophalen. De assistent roept achter de schermen de juiste tools aan, met dezelfde validatie en regels als je CMS.
Nee. Een MCP-server is een extra interface náást je bestaande CMS, geen vervanging. Het hergebruikt dezelfde modellen, validatie en business-logica. Je CMS blijft volledig werken; de MCP-server geeft je er een tweede, conversatie-gestuurde manier bij om dezelfde site te beheren.
Mits goed opgezet wel. In de server die wij bouwden start nieuwe content altijd als concept, vereist publiceren een expliciete bevestiging, en bestaat er geen verwijder-tool — archiveren of verbergen is het alternatief. Toegang loopt via OAuth 2.1 met het bestaande gebruikersaccount, er is rate limiting, en elke tool valideert de input server-side. De AI kan dus niets doen wat een ingelogde beheerder niet ook zou mogen.
Elke client die het Model Context Protocol ondersteunt. In de praktijk zijn dat onder andere Claude (web en desktop), Claude Code, Cursor en VS Code. Je voegt de server-URL toe als custom connector en logt in met je CMS-account; daarna verschijnen de tools automatisch.
Ja. De server die wij bouwden werkt met een registry waarin per contenttype — paginas, blogartikelen, cases, diensten, teamleden, producten en meer — staat welke velden en regels gelden. Daardoor werken dezelfde generieke tools voor al die types, en is een nieuw contenttype een kwestie van een definitie toevoegen.
Gerelateerde expertise — Artificial Intelligence

Meer weten over artificial intelligence? Bekijk onze aanpak, werkwijze en referentieprojecten.

Hulp nodig?

Vragen over dit onderwerp? Laten we het erover hebben.

Neem contact op