WebMCP-tools testen vanuit de terminal met agent-browser
Controleer niet alleen of een WebMCP-tool uitvoert, maar ook of het resultaat klopt. Onze proef met agent-browser 0.36.0 laat dat zien. De aanvulling voor 0.38.0 legt uit hoe je automatische toolmeldingen leest en wanneer je het volledige invoerschema opnieuw moet ophalen. In Chrome DevTools kun je daarnaast zelf meekijken met elke aanroep.
Je tool staat in de lijst en de aanroep slaagt. Toch krijgt de klant vijf werkdagen terug waar je test er drie verwacht. Met een kleine controle op de CLI-uitvoer maak je dat verschil zichtbaar. We hebben de positieve én negatieve route uitgevoerd.
Vercel Labs bracht op 1 september 2026 agent-browser 0.36.0 uit met experimentele WebMCP-ondersteuning. De CLI kan paginatools ontdekken en uitvoeren. Voor ontwikkelaars is dat een concrete nieuwe testmogelijkheid: je kunt een geregistreerde tool vanuit een terminal aanroepen en het resultaat automatisch beoordelen.
Begin met een onschuldige, bekende uitkomst
Onze proef is uitgevoerd op 7 september met agent-browser 0.36.0 en Chrome 152.0.7977.76 op macOS, in aparte browsersessies zonder bestaand gebruikersprofiel. We wezen de lokale Chrome-installatie aan met --executable-path. We gebruikten de alleen-lezen levertijd-demo uit ons bestaande stappenplan. Die retourneert fictieve winkelinformatie; er worden geen bestellingen geplaatst.
Om dit na te doen heb je de CLI-installatie en Node.js voor het controlescript nodig. Controleer met agent-browser --version welke versie je gebruikt. Bewaar de volledige HTML-demo uit het stappenplan als webmcp-demo.html en serveer die lokaal op http://127.0.0.1:8767/webmcp-demo.html. Gebruik een eigen testsessie zonder opgeslagen login of automatisch hersteld profiel.
agent-browser --session webmcp-proef open http://127.0.0.1:8767/webmcp-demo.html agent-browser --session webmcp-proef webmcp list
De WebMCP-documentatie beschrijft welke metadata de lijst bevat, waaronder naam, origin, frame-ID en invoerschema. Controleer dat je de bedoelde pagina en tool ziet. In onze proef verscheen get_delivery_window. Bij vertraagde registratie moet je eerst op de registratie wachten; een navigatie die klaar is, betekent niet dat alle applicatiecode klaar is.
Update 21 september: toolmelding is nog geen volledig schema
Sinds agent-browser 0.38.0 van 16 september melden gewone browserantwoorden automatisch beschikbare WebMCP-tools bij eerste ontdekking en cataloguswijzigingen. Die samenvatting bevat namen, korte beschrijvingen, origins en frame-ID’s, maar geen invoerschema’s of annotaties. Dit is een wijziging in deze agentclient, geen nieuwe browserstandaard.
Volgens de versievaste documentatie betekent een ontbrekend data.webmcp-veld: geen update. Het betekent niet dat eerder gevonden tools verdwenen zijn. Een nieuwe melding vervangt de eerdere beschikbaarheid; status: ready met tools: [] wist die lijst. truncated: true waarschuwt voor ingekorte beschrijvingen of weggelaten tools.
Haal vóór uitvoering het volledige schema van je gekozen tool op. Voor onze demo kan dat met agent-browser --session webmcp-proef webmcp list get_delivery_window --json. Gebruik bij gelijknamige tools ook --frame met de gevonden frame-ID. Vernieuw eerder opgehaalde schema’s na een catalogusupdate; ook een schemawijziging kan zo’n melding veroorzaken. Ontdekking op zichzelf voert niets uit en verleent geen toestemming.
Ons aanvullende testadvies: wijzig in een oefenpagina de vereiste invoer van een tool zonder de naam te veranderen. Controleer of je client de wijziging meldt en het nieuwe schema ophaalt vóór de volgende aanroep. Deze aanvulling is gebaseerd op documentatie en gepubliceerde implementatie, niet op een nieuwe eigen browserproef. De onderstaande meetresultaten blijven die van 7 september met versie 0.36.0.
Maak de inhoud onderdeel van je test
Bewaar het volgende eigen controlescript als assert-delivery.cjs. Het leest de JSON-uitvoer van de CLI en controleert drie dingen: de opdracht is geslaagd, de tooluitvoering is voltooid en de tekst is exact de afgesproken demo-uitkomst.
const assert = require("node:assert/strict");
const { readFileSync } = require("node:fs");
const result = JSON.parse(readFileSync(0, "utf8"));
assert.equal(result.success, true);
assert.equal(result.data?.status, "completed");
assert.equal(result.data?.output,
"Dit demoartikel wordt binnen 3 werkdagen verzonden.");
console.log("Levertijdcontrole geslaagd.");Voer daarna in Bash of Zsh de tool uit en stuur de JSON-uitvoer naar het script. pipefail zorgt dat ook een mislukte CLI-opdracht de hele pijplijn laat mislukken. De lege invoer past bij deze demo; neem die niet zomaar over voor een tool met verplichte parameters.
set -o pipefail
agent-browser --session webmcp-proef --json webmcp invoke get_delivery_window --params '{}' \
| node assert-delivery.cjsHet script slaagde bij de oorspronkelijke tekst. Daarna veranderden we uitsluitend het zichtbare levertijdbericht in de geladen demo van drie naar vijf werkdagen. De tool bleef succesvol uitvoeren, maar de inhoudscontrole faalde met een verschil tussen verwacht en ontvangen. Daarmee controleer je meer dan alleen bereikbaarheid.
| Uitgevoerde proef | Waargenomen resultaat | Betekenis |
|---|---|---|
| Oorspronkelijke demo: drie werkdagen | Tool gevonden; controle geslaagd | Deze geregistreerde tool levert de verwachte tekst |
| Demotekst gewijzigd naar vijf werkdagen | Tool voltooid; inhoudscontrole faalt | De test merkt een afwijkende uitkomst op |
Aparte sessie met --no-webmcp | Lege toollijst; tekst blijft leesbaar | De gewone informatie werkt ook zonder de toolroute |
Voor een echte winkel is een vaste tekstvergelijking meestal te beperkt. Ons advies: gebruik gecontroleerde testdata en toets bijvoorbeeld product-ID, beschikbaarheid en uiterste verzenddatum als afzonderlijke velden. Verander de verwachte uitkomst alleen wanneer de productafspraak werkelijk verandert, niet om een rode test groen te krijgen.
Update 27 oktober: zelf meekijken in Chrome DevTools
Wil je zonder terminal zien wat een pagina aanbiedt, open dan Chrome DevTools op die pagina, ga naar het tabblad Application en kies WebMCP in de zijbalk. Volgens Chrome zie je daar elke tool met de beschrijving die een agent krijgt, en hoe vaak de tool in deze sessie is aangeroepen. Klik je een tool aan, dan voer je hem met eigen invoer uit via Run tool. Een eerdere aanroep start je met dezelfde invoer opnieuw.
Het paneel houdt ook een log bij van elke aanroep: de invoer die de agent stuurde, het resultaat en de status, zoals voltooid, geannuleerd, bezig of fout. Past de invoer of het resultaat niet bij het schema van de tool, dan staat dat als fout bij de uitvoer. Je kunt filteren op naam, status en soort tool. Gebruik je Chrome DevTools voor agents, dan staan de WebMCP-functies daar standaard uit; je zet ze aan met een vlag.
Het paneel vervangt het controlescript hierboven niet. Het helpt tijdens het bouwen om te zien wat er misgaat, maar keurt niets automatisch af. Deze aanvulling is gebaseerd op de documentatie van Chrome, niet op een eigen proef.
Houd de runtime apart van je website
Agent-browser schakelt WebMCP standaard in voor lokaal beheerde Chrome-sessies. Dat maakt deze proef handig, maar bewijst niet dat je publieke origin-trialtoken werkt. Controleer de trial daarom afzonderlijk, zoals in het stappenplan. In een nieuwe sessie met --no-webmcp konden we de uitgeschakelde route expliciet vergelijken.
Een lege lijst is iets anders dan de gedocumenteerde fout webmcp_unsupported: dan biedt de gekozen runtime de benodigde experimentele CDP-interface niet. Ondersteuning in onze lokale Chrome-proef mag je niet doortrekken naar aangesloten browsers, cloudproviders of andere engines. Leg de geteste combinatie vast.
Sluit je testsessie na afloop met agent-browser --session webmcp-proef close. Deze controle gebruikt geen taalmodel: zij bewijst niet dat een agent bij een vrije klantvraag de juiste tool kiest. Daarvoor blijven afzonderlijke taakevaluaties nodig. Je hebt nu wel een concrete technische test die een verkeerde uitkomst kan afkeuren voordat je die agenttest begint.
Bronnen
- Vercel Labs: agent-browser 0.36.0, release van 1 september 2026
- Vercel Labs: agent-browser 0.38.0, release van 16 september 2026
- agent-browser 0.38.0: automatische catalogusmeldingen en gerichte schema-opvraag
- agent-browser PR #1842: implementatie, controles en beperkingen; gemerged 15 september
- agent-browser: WebMCP-commando's, runtimegrenzen en veiligheid
- agent-browser: installatie en keuze van browser
- agent-browser: geïsoleerde testsessies
- Chrome: tooltests en taakevaluaties
- Chrome DevTools: het WebMCP-paneel onder Application
Lees ook
Meer context bij dit onderwerp: Wat is WebMCP? De complete uitleg. Benieuwd hoe jouw site ervoor staat? Doe de gratis AI-Ready Websitescan.