So entscheidet der Scanner
So entscheidet der Scanner
Drei Urteile, offene Regeln. Wirkt eins falsch, sag Bescheid: Genau dieses Feedback macht ihn besser.
- Agentenfähig
- Die Seite registriert mindestens ein WebMCP-Tool, der Linter findet darin keine Fehler, und der Agentenfähigkeits-Score liegt bei 70 oder mehr. Warnungen, etwa ein langer Name, stehen dem nicht im Weg.
- Fast
- Die Seite registriert Tools, aber mindestens eins hat einen Linter-Fehler (
invalid-name,duplicate-name,missing-description,invalid-input-schema,invisible-unicodeoder eine Größe über dem harten Limit), oder der Score liegt unter 70. - Noch nicht
- Die Seite registriert kein WebMCP-Tool. Wir zeigen, wie viele Tokens ein Agent stattdessen fürs Lesen der Seite verbrauchen würde.
So läuft ein Scan ab
- Wir öffnen die Seite in einem Headless-Chrome auf unserem Server, ohne Cookies und ohne Login.
- Bevor die Skripte der Seite laufen, fügen wir einen WebMCP-Host hinzu, damit die Seite ihre Tools registriert wie im Browser eines Agenten. Er nimmt auch die älteren navigator.modelContext und provideContext an, damit darauf gebaute Seiten ihre Tools trotzdem zeigen.
- Sobald die Seite geladen ist und ihre Tools stehen, lesen wir Name, Beschreibung, Eingabeschema und Annotationen jedes Tools und prüfen sie mit dem Linter.
- Tokens werden aus dem Text-Snapshot der Seite geschätzt: Zeichenzahl geteilt durch vier.
- Für den Score ruft derselbe Browser robots.txt, llms.txt, Sitemap, Markdown-Version, Link-Header, Agent-Skills-Index und API-Katalog der Website ab (je 3 s, gleiche Origin, ohne Cookies) und merkt sich nur, ob es sie gibt.
- Der Score, von 100: WebMCP 50 (Tools 25, keine Lint-Fehler 15, jedes Tool beschrieben 5, jedes Tool annotiert 5), Kosten für Agenten 15 (voll mit Tools, sonst nach der Tokenzahl der Seite), lesbar 20 und auffindbar 15 (5 pro Prüfung).
- Ein Ergebnis gilt 10 Minuten; jeder Besucher kann einen neuen Scan pro Minute starten.
Alle Linter-Regeln mit Begründung
Hältst du ein Urteil für falsch? Öffne ein Issue mit dem Scan-Link.