Ga naar inhoud

WebMCP draait nu in ChatGPT en Codex: wat er in augustus 2026 veranderde

10 min leestijd
Bart Waardenburg

Bart Waardenburg

AI Agent Readiness Expert & Oprichter

Op 12 augustus hebben we onze scanner aangepast zodat navigator.modelContext als legacy-signaal telt en document.modelContext als het huidige, omdat de W3C-draft de getter in mei al verplaatst had. Een week eerder, op 5 augustus, had Shopify WebMCP aangezet voor elke Liquid-storefront, in een developer-changelog in plaats van een lanceringspost. Twee weken later zette OpenAI het aan in de browser van de ChatGPT desktop-app en in Codex. In één maand ging WebMCP van origin trial naar iets wat een agent op de laptop van je klant echt gaat aanroepen.

Maar open zo'n pagina in een browser zonder WebMCP-support en je vindt geen spoor van die tools. In de HTML staat een kleine loader die wacht op een browser die de API kent, en dat is alles. Dat gat is de interessantere helft van dit verhaal.

Wat OpenAI precies heeft aangezet

Op 25 augustus postte het developer-account van OpenAI dat WebMCP-support naar de ingebouwde browser van de ChatGPT desktop-app en naar ChatGPT Sites komt, met de zin die er voor site-eigenaren toe doet: "When you visit a compatible website, ChatGPT or Codex can automatically use it to complete your task." De documentatie noemt de feature "site tools" en omschrijft die als de implementatie door ChatGPT van de voorgestelde WebMCP-standaard. Met andere woorden: OpenAI is de eerste mainstream agent die WebMCP-tools in productie gebruikt, vóór Gemini in Chrome, dat Google tot nu toe alleen beloofd heeft.

De uitrol is smaller dan de tweet doet vermoeden. Site tools werken in de ingebouwde browser van de desktop-app, voor ChatGPT Work en Codex, en alleen met de modellen GPT-5.6 Sol en Terra (bij Luna staat het uit). Enterprise- en Edu-workspaces doen voorlopig niet mee. Zodra een pagina tools registreert, verschijnt er een "Site tools"-knop in de adresbalk waar gebruikers elke tooldefinitie kunnen bekijken en een log zien van wat er is aangeroepen. Elke aanroep krijgt eerst een safety review, en de gebruikelijke bevestigingsregels voor aankopen, berichten, verwijderingen en permissiewijzigingen blijven gelden.

Twee details springen eruit. Ten eerste staat er in de docs dat "website-provided tool definitions and results are untrusted content", wat de juiste houding is, en ik hoop dat elke andere agent-leverancier die overneemt. Ten tweede gebruikt OpenAI het zelf ook: learn.chatgpt.com registreert vijf eigen tools, waaronder search_openai_docs en lookup_page, zodat Codex de documentatie kan doorzoeken zonder te scrapen.

In het woord "ingebouwde browser" zit ook een stukje geschiedenis. ChatGPT Atlas, de losse browser die OpenAI in oktober 2025 voor macOS lanceerde, stopte op 9 augustus met werken. De browser zit nu in de desktop-app, naast Codex, en precies daar landde WebMCP zestien dagen later. Tegelijk met de lancering opende OpenAI een tiendaagse WebMCP Challenge met Google Chrome, Cloudflare, Shopify, Vercel, Render en Netlify als partners; inzenden kan tot 3 september, de winnaars volgen op 23 september.

De maand ervoor: de platforms gingen eerst

De aankondiging van OpenAI kreeg de aandacht, maar het grotere adoptiemoment zat drie weken eerder, en Shopify gaf het een changelog-entry in plaats van een lanceringspost. Op 5 augustus meldde de developer-changelog van Shopify dat WebMCP-tools live staan op elke Liquid-storefront en op de Hydrogen developer preview, met "nothing to install or configure". Tien tools, van search_catalog en get_product via update_cart tot proceed_to_checkout, allemaal in de ingelogde sessie van de shopper zelf. Elke merchant op een standaard Shopify-thema werd van de ene op de andere dag aanroepbaar voor agents, en de meesten zullen het nooit weten.

Een dag later publiceerde Cloudflare "Give any website a WebMCP interface" : een developer preview waarbij een schakelaar in het dashboard de edge van Cloudflare een bridge-script in je HTML laat injecteren, en die bridge registreert tool packs op document.modelContext zonder je origin aan te raken. Of generieke, aan de edge gegenereerde tools nuttig zijn voor een agent is een terechte vraag. Als distributiemechanisme is het lastig te overtreffen.

De spec hield het tempo bij. De pull request die de modelContext-getter van Navigator naar Document verhuisde werd op 27 mei gemerged, getTools() werd in juli gespecificeerd, executeTool() en AbortSignal-support volgden half augustus, en op 12 augustus kreeg de repository een implementation-status-pagina . Die pagina noemt deze week Chrome (origin trial vanaf Chrome 149), Edge (origin trial in Edge 150), Brave (experimentele support in Leo) en, toegevoegd op 26 augustus, ChatGPT Desktop. Firefox en Safari hebben elk een open standards-position-issue en geen implementatie.

SHOPIFY ZET WEBMCP AAN
5 aug
CLOUDFLARE EDGE BRIDGE PREVIEW
6 aug
OPENAI SITE TOOLS IN CHATGPT EN CODEX
25 aug

Mijn artikel van maart had de volgorde verkeerd. De tijdlijn daarin liep via de browsers: Chrome dat WebMCP misschien eind dit jaar standaard aanzet, Safari rond dezelfde tijd, Firefox in 2027. Niets daarin hield rekening met een platform met miljoenen storefronts en een agent-leverancier met honderden miljoenen gebruikers die besluiten dat een origin trial goed genoeg is. Geen van beide had de browsers daarvoor nodig.

Wat dit verandert voor kopers en winkels

Haal het protocol weg en de kant van de koper is simpel. Iemand met ChatGPT Work of Codex opent je winkel in de desktop-app en vraagt om "deze jas in maat M onder de 150 euro, in mijn mandje". Op een Shopify Liquid-winkel doorzoekt de assistent de catalogus, kiest de variant en werkt het mandje bij via de tools van Shopify, in de ingelogde sessie van die koper, met hun account en hun bestaande winkelwagen. Vragen over je verzend- en retourbeleid kan hij ook beantwoorden, want search_shop_policies_and_faqs is een van de tien tools. Betalen eindigt nog steeds in een bevestiging, omdat OpenAI aankopen als ingrijpende acties behandelt, wat de site ook declareert.

Voor de winkel is de winst een assistent die de taak afmaakt in plaats van zich door menu's en filters heen te raden, en die uit korte tool-omschrijvingen leert wat je winkel kan, in plaats van uit wat hij van de homepage weet te parsen. Dat is een betere ervaring voor de klant en een voorspelbaardere voor jou, want de tools doen alleen wat jij hebt blootgelegd.

Het zet ook drie dingen op je waakzaamheidslijst. De tool-omschrijvingen zijn wat de assistent over je winkel gelooft, dus lees ze; op Shopify zijn ze door Shopify geschreven, en orderbeheer zit bij de tools die voor je zijn aangezet. Elke tool draait in de sessie van de klant met de cookies van de klant, dus een tool die een controle overslaat die je knoppen wel afdwingen is een gat in je winkel, wie hem ook schreef. En aanroepbaar zijn brengt de assistent niet naar je deur: hij vindt je tools pas als hij al op je pagina is, dus zichtbaarheid in zoekmachines en citaties bepalen nog steeds wie bezocht wordt. Winkels die niet op Shopify of Cloudflare draaien krijgen hier nog niets van, en voor een assistent blijven ze een verzameling knoppen om doorheen te raden, terwijl een concurrent op een standaard Shopify-thema direct wordt aangeroepen.

De code die je vandaag moet schrijven

Heb je na mijn artikel van maart tools geregistreerd op navigator.modelContext, dan gebruik je de verouderde API. Chrome 150 markeert de oude locatie als deprecated maar houdt hem als alias, en de browser van OpenAI biedt document.modelContext aan. Het voorbeeld uit de documentatie van OpenAI past in een dozijn regels. Hier is het in dezelfde vorm, met een echte zoektool ingevuld:

Een WebMCP-tool registreren in de vorm die OpenAI documenteert javascript
if (typeof document.modelContext?.registerTool === "function") {
  await document.modelContext.registerTool({
    name: "search_products",
    description: "Search the catalog by keyword. Returns up to 10 matches.",
    inputSchema: {
      type: "object",
      properties: {
        query: { type: "string", description: "Free-text search query" },
      },
      required: ["query"],
      additionalProperties: false,
    },
    annotations: { readOnlyHint: true },
    execute: async ({ query }) => {
      const res = await fetch(`/api/search?q=${encodeURIComponent(query)}`);
      return { results: await res.json() };
    },
  });
}

De feature check bovenaan is verplicht, want in elke browser buiten een handjevol trials is document.modelContext undefined en gooit de aanroep een error. De annotatie readOnlyHint vertelt de agent dat de tool niets verandert, dus gebruik hem alleen op tools waar dat klopt; ingrijpende acties gaan sowieso door een bevestiging, wat je ook annoteert. Dan is er nog execute, die draait met de cookies van de gebruiker, in de tab van de gebruiker, en dus dezelfde endpoints met dezelfde autorisatie hoort aan te roepen die je knoppen al gebruiken. WebMCP is een tweede voordeur naar logica die je al hebt, en het mag nooit een achterdeur worden die daaromheen loopt.

Shopify's adapter laat zien hoe zorgvuldige productiecode eruitziet. De inline loader checkt typeof (document.modelContext || navigator?.modelContext)?.registerTool === "function" en haalt pas daarna een module van 65 KB op van cdn.shopify.com/storefront/webmcp/webmcp-0.1.1.js. Browsers zonder WebMCP downloaden hem nooit. Dat is de juiste afweging voor een script dat op miljoenen pagina's draait.

Hoe de tools er van buitenaf uitzien

Open de paginabron van een standaard Shopify Liquid-winkel, bijvoorbeeld tonyschocolonely.com, patta.nl of mudjeans.eu, of van learn.chatgpt.com zelf. Allemaal registreren ze tools, en de HTML laat daar bijna niets van zien. Shopify's loader uit de vorige sectie is de hele voetafdruk: een feature check en een CDN-URL, en de tien tooldefinities komen pas binnen nadat een geschikte browser die check doorstaat. Op learn.chatgpt.com zit de registratie in een geminificeerde Astro-module, de tiende van elf script-tags, geschreven als document?.modelContext ?? navigator?.modelContext. Waar de bridge van Cloudflare aanstaat, zijn de tools wat de edge tijdens runtime besluit.

Geen van deze sites publiceert een /.well-known/webmcp.json, omdat de spec nog steeds geen discovery-mechanisme op siteniveau heeft. Onze scanner herkent sinds deze week de Shopify-adapter en het feature-detect-patroon, maar dat is het fingerprinten van deployments die we al kennen, en het zegt niets over een site die we nog nooit gezien hebben.

Ik noem dat het onzichtbare-tool-probleem: WebMCP-tools bestaan alleen in een browser die de API al ondersteunt, nadat je scripts gedraaid hebben. Niets buiten die draaiende pagina kan ze zien, en dat geldt ook voor een agent die je site nog nooit heeft geopend, die er dus geen rekening mee kan houden en ook niet kan besluiten jou daarom te bezoeken. Bekende adapters fingerprinten, wat wij nu doen, schaalt precies zo ver als de lijst die iemand met de hand bijhoudt. De extensie Model Context Tool Inspector kan de tools tonen op de pagina waar je naar kijkt, en dat is op dit moment de state of the art in discovery.

Daarom vind ik de aanpak van Cloudflare beter dan "generieke tools" doet klinken. De tools die Cloudflare genereert zijn misschien simpel, maar Cloudflare zit vóór de pagina voordat die laadt en zou in principe de discovery-vraag aan de edge kunnen beantwoorden. Of ze dat doen is een productbeslissing die ik niet kan voorspellen. Wie discovery oplost, bepaalt welke sites agents gaan bezoeken, en op dit moment heeft niemand dat gedaan.

Wat dit voor jou betekent

Draai je een standaard Shopify Liquid-thema, dan heb je WebMCP al. Open je winkel in de browser van de ChatGPT desktop-app (met ChatGPT Work of Codex) en klik op "Site tools" in de adresbalk om te zien wat een agent ziet. De tool-omschrijvingen die Shopify schreef zijn wat ChatGPT leest om te besluiten of het je catalogus doorzoekt. Klanten van Cloudflare krijgen iets vergelijkbaars met één schakelaar in de developer preview, en dat is een goedkope manier om te ontdekken of agents überhaupt tools op je site proberen te gebruiken voordat je engineeringtijd in fatsoenlijke tools steekt.

Alle anderen kunnen twee of drie tools registreren op document.modelContext, achter de feature check, als dunne schil om endpoints die je al vertrouwt. Zoeken en "geef details van X" zijn de voor de hand liggende eerste kandidaten, omdat ze read-only zijn. Test in de ChatGPT desktop-app, of in Chrome met chrome://flags/#enable-webmcp-testing en de extensie Model Context Tool Inspector. Behandel daarna elke aanroep als untrusted input, zoals je een form post zou behandelen uit een browser die je niet beheert, want dat is het.

Niemand kan je beloven dat WebMCP de standaard wordt. De spec is nog steeds een Community Group-draft waar Firefox noch Safari zich aan gecommitteerd heeft. Het API-oppervlak veranderde dit jaar ook al één keer terwijl early adopters er al op bouwden. Wat augustus wel duidelijk heeft gemaakt, is dat agents van OpenAI deze tools vanaf nu op echte pagina's aanroepen, en dat een groot deel van de e-commerce al antwoord geeft. Dat deel ligt bij de leveranciers. Wat je tools zeggen als een agent ze aanroept, ligt nog steeds bij jou.

Bronnen

Klaar om te checken?

Scan je website

Ontvang je AI-agentgereedheidscore met bruikbare aanbevelingen over 5 categorieën.

  • Gratis directe scan met lettercijfer
  • 5 categorieën, 75 checkpoints
  • Codevoorbeelden bij elke aanbeveling

Gerelateerde artikelen

Lees verder over AI-agentgereedheid en weboptimalisatie.

Wat is agents.json? AI Agent-mogelijkheden op je website adverteren
10 min leestijd

Wat is agents.json? AI Agent-mogelijkheden op je website adverteren

agents.json is de opkomende tegenhanger van robots.txt - een machine-leesbaar bestand dat AI-agents vertelt wat je website kan. We behandelen de Wildcard-specificatie, vergelijken het met A2A, MCP en OpenAPI, en laten stap voor stap zien hoe je het implementeert.

ai-agents web-standards agent-protocols
Wat is MCP? Het Model Context Protocol voor AI Agents
10 min leestijd

Wat is MCP? Het Model Context Protocol voor AI Agents

Anthropic's Model Context Protocol (MCP) verbindt AI-assistenten met externe tools en data. We behandelen de architectuur, discovery via /.well-known/mcp.json, huidige adoptie en hoe je het implementeert.

ai-agents web-standards agent-protocols
Wat is Google's A2A Protocol? Agent-naar-Agent communicatie uitgelegd
10 min leestijd

Wat is Google's A2A Protocol? Agent-naar-Agent communicatie uitgelegd

Google's Agent-to-Agent (A2A) protocol laat AI-agents elkaar ontdekken en samenwerken. We behandelen de Agent Card, de taaklevenscyclus, A2A vs MCP, het partnerecosysteem en stapsgewijze implementatie.

ai-agents web-standards agent-protocols

Ontdek meer

De meeste websites scoren onder het gemiddelde. Ontdek waar jij staat.

Ranglijst
BEKIJK HOE ANDEREN SCOREN

Ranglijst

Bekijk AI-gereedheidsscores van gescande websites.
Vergelijken
VERGELIJKEN

Vergelijken

Vergelijk twee websites zij aan zij op alle 5 gewogen categorieën.
Over ons
HOE WIJ METEN

Over ons

Lees meer over onze scoringsmethodologie met 5 categorieën.