WebMCP: So optimierst du für KI-Agenten und misst, was sie tun

WebMCP lässt deine Seite Agenten fertige Aktionen anbieten und macht ihre Zugriffe messbar, was sonst kein Verfahren leistet.

Was WebMCP ist – und was nicht

Ein Browser-Agent muss aus Screenshot und DOM ableiten, was deine Buttons tun, und liegt dabei oft daneben. WebMCP nimmt ihm das ab: Deine Seite deklariert ihre Aktionen, der Agent ruft sie direkt auf. Das passiert im Browser, ist also keine Parallelwelt zu den KI-Browsern, sondern strukturierte Hilfe innerhalb der Browser-Bedienung. Anders als beim reinen Ausfüllen vorhandener Formulare stellst du als Seitenbetreiber dafür aktiv etwas bereit, egal ob Shop, Buchungsseite oder B2B-Formular.

Wichtig

Was es nicht ist: ein Ranking-Faktor. Ob ein Agent dich überhaupt vorschlägt, entscheidet die GEO-Ebene. WebMCP macht zweierlei: deine Seite für den Agenten bedienbar und seine Zugriffe für dich messbar.

Die zwei APIs

WebMCP kennt zwei Wege, eine Aktion als Tool anzubieten. Die Faustregel: Ist die Aktion schon ein HTML-Formular, nimm die deklarative API; ist sie es nicht, die imperative.

Deklarativ

Deklarativ

Eignet sich für alles, was ohnehin ein Formular ist, Suche, Kontakt, Buchung.

Du brauchst kein JavaScript.

Schnell und günstig, aber strikt begrenzt auf <form>.

Imperativ

Imperativ

ist es am robustesten, weil dein Code bei jedem Aufruf läuft. Du loggst direkt in der Funktion:

Das kostet etwas JavaScript, gibt dir aber volle Kontrolle, und die sauberste Messung.

Deklarativ: bestehende Formulare annotieren

Die deklarative API funktioniert ausschließlich mit <form> -Elementen. Einen einzelnen Button, ein <div>oder sonst etwas kannst du damit nicht zum Tool machen, dafür ist die imperative API da.

So entsteht das Tool: <toolname> und <tooldescription> (beide Pflicht) hängst du ans Formular, der <toolname> wird der Tool-Name. Jedes Eingabefeld wird über sein <name> -Attribut automatisch zu einem Parameter. Das Besondere: Der Browser übersetzt auch die normalen HTML-Regeln ins Tool-Schema, <required> wird zur Pflicht, ein select zur festen Auswahlliste, <type>, <min>, und <max> zu Grenzen. Die Felder erklärst du mit <toolparamdescription>, den Rest liest der Browser aus dem Formular.

<!-- Wird zum Tool "searchFlights" mit den Parametern -->
<!-- from, to, class, passengers und when. -->
<form toolname="searchFlights"
      tooldescription="Sucht Flüge zwischen zwei Orten an einem Datum"
      toolautosubmit>   <!-- Agent darf selbst absenden -->

  <!-- Pflichtfelder, Freitext -->
  <input name="from" required
         toolparamdescription="Abflugort oder IATA-Code, z. B. CGN">
  <input name="to" required
         toolparamdescription="Zielort oder IATA-Code, z. B. JFK">

  <!-- feste Auswahlliste: der Agent darf nur diese Werte nehmen -->
  <select name="class" toolparamdescription="Beförderungsklasse">
    <option value="economy">Economy</option>
    <option value="business">Business</option>
    <option value="first">First</option>
  </select>

  <!-- Zahl mit Grenzen -->
  <input name="passengers" type="number" min="1" max="9" value="1"
         toolparamdescription="Anzahl Reisender">

  <input name="when" type="date"
         toolparamdescription="Abflugdatum">

  <button type="submit">Suchen</button>
</form>

Deklarativ ist also mehr als drei Attribute: Du nutzt die vorhandene Formular-Semantik weiter. Die vollständige Attributliste und wie HTML-Regeln zum Schema werden, steht in der Chrome Dokumentation.

Ob der Agent selbst absenden darf, entscheidest du pro Formular über das Attribut toolautosubmit . Ohne das Attribut füllt der Agent nur die Felder, der Browser setzt den Fokus auf den Absenden-Button, klicken muss der Mensch selbst. Mit dem Attribut sendet der Agent selbst.

Achtung

Hängst du es an ein Kontaktformular, heißt das konkret: Der Agent verschickt die Nachricht, ohne dass ein Mensch sie noch sieht, samt möglicher Tippfehler oder falscher Angaben. Deshalb die Faustregel: Auto-Submit nur für lesende, folgenlose Tools wie Suche; bei allem Schreibenden, Kontakt, Bestellung, Buchung, lässt du es weg und überlässt den letzten Klick dem Menschen.

Das Ergebnis bekommt der Agent standardmäßig dadurch, dass das Formular normal absendet und die Folgeseite lädt. Willst du ihm stattdessen ein strukturiertes Ergebnis ohne Seitenwechsel zurückgeben, fängst du das Submit-Event ab und antwortest über respondWith() (Code im untenstehenden Messabschnitt).

Imperativ: Aktionen als JavaScript-Funktionen

Ist die Aktion kein Formular, registrierst du das Tool über navigator.modelContext. Du gibst Name, Beschreibung, ein Eingabe-Schema und eine execute -Funktion an, die bei jedem Aufruf läuft. In execute rufst du einfach deine vorhandenen JavaScript-Funktionen auf, du musst nichts neu bauen:

navigator.modelContext.registerTool({
  name: "addToCart",
  description: "Fügt das angezeigte Produkt zum Warenkorb hinzu",
  inputSchema: {
    type: "object",
    properties: { quantity: { type: "integer", minimum: 1, default: 1 } }
  },
  async execute(args) {
    return doAddToCart(args);   // deine bestehende Logik
  }
});

So stellst du dem Browser eigene, klar umrissene Funktionen bereit und behältst volle Kontrolle über Schema und Ausführung. Aufrufbar sind nur die Tools, die du registrierst, eine neue Angriffsfläche für deine Seite entsteht dadurch nicht.

Wie du den KI-Agenten in deinem Tracking sichtbar machst

Die verbreiteten Pixel-/DOM-Agenten (Atlas, Comet, Claude for Chrome) laufen im Browser eines echten Nutzers und sehen in deinen Logs aus wie schnelle Menschen. WebMCP liefert dir das fehlende Signal, je nach API auf zwei Arten.

Imperativ ist am robustesten, weil dein Code bei jedem Aufruf ausgeführt wird. Du loggst direkt in der Funktion:

async ausfuehren(args) {
  gtag("event", "agent_call", { tool: "addToCart" });   // z.B. an Google Analytics 4
  return addToCartAusfuehren(args);
}

Deklarativ liefert der Browser das Signal frei Haus: Auf dem Submit-Event sitzt ein schreibgeschütztes Flag agentInvoked. Der Browser setzt es, du liest es nur, true , wenn ein Agent das Formular ausgelöst hat, false beim menschlichen Klick.

form.addEventListener("submit", (event) => {
  if (event.agentInvoked) {
    // 1) an Google Analytics 4 melden
    gtag("event", "agent_submit", { tool: form.getAttribute("toolname") });
    // 2) optional: ein strukturiertes Ergebnis an den Agenten zurückgeben
    event.preventDefault();
    event.respondWith(process(new FormData(form)));
    return;
  }
  // Mensch → normaler Ablauf
});

Gemessen wird im Browser, von dort schiebst du das Signal in deine Analytics (oben via gtag an Google Analytics 4, alternativ über den GTM- dataLayeroder gleich ins Data-Warehouse. So siehst du, wann der Kanal für dein Geschäft anspringt, statt im Dunkeln zu tappen.

Wo WebMCP heute steht

Origin Trial · Chrome 149

WebMCP ist ein offener Standard von Google und Microsoft in der W3C Web Machine Learning Community Group. Seit Mai 2026 steckt es im offiziellen Chrome, als Origin-Trial in Version 149, und lässt sich damit auf echten Seiten ausprobieren. Edge wird erwartet, Firefox und Safari haben nichts angekündigt. Und es ist modell-agnostisch: Du baust deine Tools einmal, jeder Agent, der den Standard spricht, kann sie nutzen.

Bisher konsumiert genau ein Agent WebMCP-Tools: Gemini in Chrome. Alle anderen (Claude, ChatGPT/Atlas, Perplexity, Edge) klicken und scrapen weiter. Real in Benutzung also, aber denkbar schmal: ein Agent, ein Browser, Testbetrieb.

Reichweite

Und selbst dieser eine Agent erreicht kaum jemanden. Die WebMCP-Unterstützung läuft als US-Vorabversion nur für Google AI Pro und Ultra Abonnenten. Die real erreichbare Nutzerbasis ist damit verschwindend gering.

Das kann sich aber schnell ändern. WebMCP sitzt in Chrome, dem Browser mit rund 65 % Marktanteil. Löst Google die Funktion aus der bezahlten US-Vorschau und rollt sie breit oder kostenlos aus, steigt die Reichweite um ein Vielfaches dessen, was eine einzelne Erweiterung wie Claude for Chrome je erreicht. Wann das kommt, ist offen.

Die Konsequenz: kleiner Aufwand jetzt, möglicherweise großer Kanal später. Bau WebMCP jetzt ein, wenn du den Mess-Vorsprung willst. Breiten Traffic musst du dieses Jahr nicht erwarten, aber wenn Google den Schalter umlegt, willst du nicht erst dann anfangen.

Wo anfangen

1

Schlüssel-Aktionen festlegen

Suche, Warenkorb, Buchung, Anfrage, Support sind die Kandidaten für Tools.

2

Deklarativ starten

Bestehende Formulare annotieren mit <toolname>/<tooldescription>. Günstig, schnell, und über agentInvoked sofort ein Mess-Signal.

3

Imperativ ergänzen

Nicht-Formular-Aktionen registrieren über navigator.modelContext und das Tracking direkt in die Funktion bauen.

4

Messpipeline schließen

Die Signale in Analytics oder Warehouse leiten, damit du den Anlauf des Kanals siehst.

5

Registrierung prüfen

In den DevTools listet das WebMCP-Panel im Application-Tab deine Tools; mit dem Model Context Tool Inspector (Chrome-Extension) rufst du sie manuell auf, bevor ein echter Agent kommt.

Fazit

Fazit

WebMCP macht deine Seite verlässlich für Agenten bedienbar, und du siehst zugleich, wann wirklich ein Agent gehandelt hat. Der Einbau ist klein, und der Kanal kann schnell wachsen, deshalb lohnt es sich, jetzt vorzubereiten statt später nachzuziehen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert