Skip to main content
Glama

Das Problem

Playwright MCP sendet ~14.000 Token für eine inhaltsreiche Seite wie Hacker News. Das meiste davon ist Rauschen. Ihr Kontextfenster füllt sich. Ihr Agent wird verwirrt. Sie bezahlen dafür.

Leapfrog sendet ~1.400 Token. Dieselbe Seite. Dieselben Informationen. Bis zu 10x weniger Rauschen.

┌─────────────────────────────────────────────────────┐
│  Playwright MCP                                     │
│  ████████████████████████████████████████  ~14,000   │
│                                                     │
│  Leapfrog                                           │
│  █████                                    ~1,400    │
└─────────────────────────────────────────────────────┘
          tokens per page (Hacker News, real test)

Die Einsparungen liegen je nach Komplexität der Seite zwischen dem 2- und 10-fachen. Inhaltsreiche Seiten erzielen die größten Gewinne. Dichte Formulare die kleinsten. Der Median über reale Websites hinweg liegt bei ~4-5x.

Schnellstart

npx leapfrog --doctor          # verify everything works
npx leapfrog --stealth-audit   # test all 19 stealth patches
npx leapfrog --config          # print MCP config to paste

Fügen Sie dies zu Ihrer ~/.mcp.json (Claude Code) oder der MCP-Konfiguration Ihres Editors hinzu:

{
  "leapfrog": {
    "command": "npx",
    "args": ["-y", "leapfrog"],
    "env": {
      "LEAP_MAX_SESSIONS": "15",
      "LEAP_TILE": "true",
      "LEAP_HUD": "true",
      "LEAP_SOUND": "true",
      "LEAP_AUTO_CONSENT": "true"
    }
  }
}

Leapfrog verwendet playwright-core (15 MB) anstelle von playwright (1,6 GB) und bündelt keinen Browser. Entweder:

  • Setzen Sie LEAP_CHANNEL=chrome, um Ihr installiertes Chrome/Chromium zu verwenden

  • Oder führen Sie npx playwright-core install chromium aus, um das gebündelte Chromium-Binary zu installieren

Feature-Matrix

Leapfrog

Playwright MCP

agent-browser

Token pro Seite

~1.200-2.500

~3.800-15.000

~300

Parallele Sitzungen

15

1

1

Sitzungsisolierung

Ja

Nein

Nein

Multi-Tab / Popups

Ja

Nein

Nein

Netzwerk-Intercept

Ja

Nein

Nein

Konsolen-Erfassung

Ja

Ja

Nein

Stealth / Anti-Bot

Ja

Nein

Nein

Smart Wait (5 Typen)

Ja

Basis

Nein

Absturzwiederherstellung

Ja

Nein

Nein

Batch-Aktionen (100/Aufruf)

Ja

Nein

Nein

Init-Script-Injektion

Ja

Ja

Nein

Ziehen / Hochladen / Größe ändern

Ja

Ja

Nein

Sitzungsspezifischer Proxy

Ja

Nein

Nein

Humanisierung (Opt-in)

Ja

Nein

Nein

Wiederverwendung von Auth-Profilen

Ja

Nein

Nein

Cookie-Persistenz

Ja

Nein

Nein

Seitenklassifizierung (18)

Ja

Nein

Nein

Sitzungsspeicher

Ja

Nein

Nein

API-Intelligenz

Ja

Nein

Nein

Adaptives Warten + Auto-Retry

Ja

Nein

Nein

CAPTCHA-Auto-Auflösung

Ja

Nein

Nein

Selbstoptimierung (9 Dim.)

Ja

Nein

Nein

Aufzeichnung / Wiedergabe

Ja

Nein

Nein

Paginierungsextraktion

Ja

Nein

Nein

Inkrementelle Snapshots (Diff)

Ja

Nein

Nein

Stealth-Selbsttest-CLI

Ja

Nein

Nein

SSRF-Schutz

Ja

Nein

Nein

Stealth

Leapfrog liefert standardmäßig 19 Anti-Erkennungs-Patches (LEAP_STEALTH=true). Diese decken die Vektoren ab, die Fingerprinting-Dienste wie CreepJS und fingerprint-pro tatsächlich prüfen:

  • Client Hints Brands (entfernt HeadlessChrome)

  • navigator.webdriver erzwungen auf undefined

  • WebGL Vendor/Renderer (ersetzt SwiftShader durch echte GPU-Strings)

  • Verbindungs-RTT (nicht null)

  • Timing der Alert-Schließung (Verzögerung in menschlicher Geschwindigkeit)

  • Offset der äußeren/inneren Fensterhöhe

  • Auffüllung des MIME-Typ-Arrays

  • Plattform-Inferenz aus dem User-Agent

  • chrome.app-Emulation

  • iframe contentWindow-Schutz

  • Media-Codec-Spoofing (canPlayType)

  • document.hasFocus()-Überschreibung

  • Entfernung von Source-URL-Kommentaren

  • Koexistenz von benutzerdefiniertem UA + Stealth (benutzerdefinierte User-Agents deaktivieren nicht mehr den Stealth-Kontext)

  • Erkennung von CDP Runtime.enable (Error.prepareStackTrace-Filter)

  • Permissions-API-Spoofing (20+ Berechtigungstypen)

  • AudioContext-Fingerprint-Rauschen (getChannelData/getFloatFrequencyData)

  • WebRTC-IP-Leak-Prävention (ICE-Kandidaten-Filterung)

  • Spoofing des Font-Enumeration-Fingerprints

Sitzungsspezifische Stealth-Steuerung: Übergeben Sie stealth: false in session_create, um dies für eine bestimmte Sitzung zu deaktivieren.

Humanisierung (Experimentell)

Setzen Sie LEAP_HUMANIZE=true, um eine menschenähnliche Browser-Interaktion zu ermöglichen. Dies ist ein Opt-in und fügt Latenz im Austausch für realistischeres Verhalten hinzu. Sechs Module:

  • Maus — Bezier-Kurvenpfade mit Fitts's Law-Timing und Mikro-Zittern

  • Tippen — Log-normale Verzögerungen zwischen den Tasten (200ms Median), Tastendauer, Bigram-bewusste Geschwindigkeit, Rollover-Tippen

  • Scrollen — Trägheitssimulation mit Anlauf und Impulsabfall (Touchpad/Mausrad-Physik)

  • Pause — "Denk"-Verzögerungen zwischen Aktionen, die kognitive Lücken simulieren

  • Fingerprint — Kohärente Browser-Fingerprint-Generierung (Plattform, Gerätespeicher, GPU, Zeitzone)

  • Utils — Gemeinsame mathematische Primitive (Box-Muller-Gauß, Verteilungen)

Seitenklassifizierung

Jeder navigate- und snapshot-Aufruf klassifiziert den Seitentyp automatisch mithilfe von gewichtetem Signal-Scoring (kein LLM erforderlich). 18 Typen:

login · search-results · product · product-list · checkout · article · dashboard · form · error · challenge · landing · documentation · profile · media · feed · qa · ecommerce · unknown

Die Klassifizierung ermöglicht eine intelligentere Snapshot-Extraktion — Login-Seiten zeigen Formularfelder, Artikel zeigen Inhalte, Dashboards zeigen interaktive Elemente.

Harness-Intelligenz

Das Harness verfolgt jede Aktion in einer Sitzung und klassifiziert die Ergebnisse:

  • Klassifizierung des AktionsergebnissesSUCCESS, SILENT_CLICK, NAVIGATION, WRONG_ELEMENT, BLOCKED, ERROR, PENDING

  • Erkennung von Bot-Weiterleitungen — erkennt, wenn eine Website nach einer Aktion auf eine Challenge- oder Block-Seite weiterleitet

  • Schleifenerkennung — warnt, wenn der Agent feststeckt, dasselbe Element anzuklicken, zwischen URLs hin- und herzuspringen oder Aktionen zu wiederholen

  • Sitzungsspeicher — das Tool session_memory ruft Aktionen nach der Komprimierung des Kontextfensters ab

Persistente Browser-Profile verwenden jetzt context.cookies() + addCookies() anstelle von storageState(), das bei persistenten Kontexten leer zurückgegeben wird. Der Auth-Status bleibt über Sitzungen hinweg erhalten.

Adaptives Warten + Stealth-Eskalation

navigate wiederholt den Vorgang automatisch mit Fallback-Strategien, wenn Seiten nicht geladen werden:

  1. Versuche load (am schnellsten) — falls leer, wiederhole mit networkidle (10s Limit)

  2. Wenn networkidle ein Timeout hat (Amazon, werbelastige Seiten), falle auf domcontentloaded zurück

  3. Wenn blockiert/gefordert, eskaliere Stealth: zufällige Verzögerungen → warte auf JS-Challenge → rotiere Sitzung mit frischem Fingerprint

  4. Profil-Sitzungen (authentifiziert) lassen ihre Sitzung niemals zerstören — hart begrenzt auf Level 2

Deaktivieren Sie dies mit autoRetry: false bei navigate. Steuern Sie die maximale Eskalation mit maxRetryLevel (0-5, Standard 3).

Aufzeichnung / Wiedergabe

Exportieren Sie den Aktionsverlauf einer Sitzung als abspielbare Aufzeichnung und spielen Sie sie dann in neuen Sitzungen ab:

  • session_export — erstellt parametrisiertes JSON oder Playwright-Skript aus dem Sitzungsverlauf. @eN-Referenzen werden in stabile CSS-Selektoren aufgelöst. Erkennt automatisch E-Mails, Passwörter, URLs als {{placeholders}}.

  • session_replay — spielt eine Aufzeichnung mit Parameter-Überschreibungen ab. Unterstützt onError: 'stop' oder 'skip'.

Verwandeln Sie einmalige Agenten-Workflows in wiederverwendbare Automatisierungen.

Paginierungsextraktion

Extrahieren Sie Daten über mehrere Seiten hinweg in einem einzigen Tool-Aufruf:

  • Click-next — erkennt automatisch "Weiter"-Buttons, Paginierungs-Links, "Mehr laden"-Buttons

  • Unendliches Scrollen — scrollt und wartet auf neue Inhalte via DOM-Hash-Vergleich

  • URL-Muster — inkrementiert ?page={page} oder benutzerdefinierte Muster

Ersetzt 3-4 Tool-Aufrufe pro Seite. Limit: 50 Seiten, 100K Zeichen insgesamt. Stoppt bei: kein "Weiter"-Button, leere Seite, doppelter Inhalt oder Bot-Erkennung.

Inkrementelle Snapshots

Das diff-Tool gibt nur das zurück, was sich seit dem letzten Snapshot geändert hat — Hinzufügungen, Entfernungen, Änderungen. Massive Token-Einsparungen für Überwachungs- und Polling-Workflows.

HUD-Overlays (LEAP_HUD=true)

Wenn Leapfrog im Headed-Modus läuft, blendet es visuelles Feedback über jede Sitzung ein:

  • Klick-Welle — expandierender grüner Kreis an den Klick-Koordinaten (nur Agenten-Aktionen)

  • Zoom-auf-Ziel — der Browser zoomt kurzzeitig auf 1,15x auf das angeklickte Element, damit Agenten (und Menschen) visuell verfolgen können, was in gekachelten Fenstern passiert

  • Scroll-auf-ZielscrollIntoView vor Klicks, damit Sie sehen können, was der Agent anklicken wird

Minimalistisch im Design. Keine Ränder, keine Statusleisten, kein Cursor-Overlay — nur das Feedback, das zählt.

Multi-Terminal-Kachelung (LEAP_TILE=true)

Mehrere Leapfrog-Instanzen teilen sich den Bildschirm über dateibasierte Koordination. Jede Instanz verfolgt ihre eigenen Fenster und ein TilesCoordinator weist globale Rasterplätze zu — keine Überlappung, keine manuelle Anordnung. Setzen Sie LEAP_TILE=true (oder LEAP_TILE=master für die primäre Instanz). Der Abstand zwischen den Kacheln ist mit LEAP_TILE_PADDING konfigurierbar (Standard 8px).

Menschliches Eingreifen

Leapfrog erkennt automatisch Situationen, die einen Menschen erfordern — CAPTCHAs, Login-Formulare, OAuth-Weiterleitungen, Cloudflare-Challenges — und versucht, sich selbst zu lösen, bevor es pausiert.

  • Löst zuerst automatisch: klickt reCAPTCHA-Checkboxen, Cloudflare-Verifizierungs-Buttons, generische Verifizierungs-/Weiter-Buttons, dann ein zweiter Versuch — alles, bevor um Hilfe gebeten wird

  • Externe Löser: setzen Sie LEAP_CAPTCHA_PROVIDER + LEAP_CAPTCHA_API_KEY für CapSolver, 2Captcha oder NopeCHA-Integration

  • Lernt, was funktioniert: merkt sich, welche Lösungsmethode pro Domain erfolgreich war, und versucht beim erneuten Besuch zuerst die bekannte gute Methode

  • Erkennt reCAPTCHA, hCaptcha, Turnstile, Login-Formulare, OAuth-Weiterleitungen, Cloudflare-Challenges

  • Tab-Titel ändert sich zu "NEEDS HUMAN", wenn ein Eingreifen erforderlich ist

  • wait_for_human-Tool — Agent ruft an, wenn er feststeckt, blockiert, bis Sie es lösen oder weiternavigieren

Schließt automatisch Cookie-Zustimmungsbanner über 10 Frameworks hinweg (OneTrust, CookieBot, TrustArc, Quantcast, Didomi, Cookielaw, Osano, Usercentrics, + generisch) plus Text-Matching-Fallback. Pro-Domain-Selektor-Caching für sofortige Wiedergabe bei erneutem Besuch.

Tracing (LEAP_TRACE=true)

Sitzungsspezifisches Playwright-Tracing mit Screenshots + DOM-Snapshots. Exportieren Sie ZIP-Dateien, die unter trace.playwright.dev über das Tool session_export_trace angezeigt werden können. Automatisches Speichern bei Sitzungszerstörung.

Selbstoptimierung

Leapfrog lernt von jedem Besuch. Das Wissen pro Domain bleibt unter ~/.leapfrog/domains/{domain}.json bestehen — 9 Dimensionen, alle automatisch:

#

Dimension

Was es tut

1

Wartestrategien

Lernt die optimale Wartemethode pro Domain (networkidle vs domcontentloaded vs load) + gleitender Durchschnitt des Timings

2

Stealth-Stufen

Eskaliert automatisch 0→3, wenn Blöcke erkannt werden (2+ Blöcke in 1 Stunde). Startet bei erneutem Besuch auf der gelernten Stufe

3

Zustimmungs-Selektoren

Merkt sich Selektoren zum Schließen von Cookie-Bannern, klickt bei erneutem Besuch automatisch

4

Challenge-Lösung

Zeichnet auf, welche CAPTCHA-Methode funktioniert hat (reCAPTCHA-Checkbox, Cloudflare-Verifizierung usw.), versucht zuerst die bekannte gute Methode

5

Unterdrückung stabiler Elemente

Identifiziert Nav-/Footer-/Sidebar-Elemente, die bei 3+ Besuchen gesehen wurden, unterdrückt sie aus Snapshots (30-40% Token-Einsparung auf ausgereiften Domains)

6

Selektor-Heilung

Merkt sich Element-Fingerprints → Selektoren, heilt defekte Referenzen über Besuche hinweg

7

API-Endpunkt-Caching

Entdeckte API-Endpunkte bleiben über Sitzungen hinweg bestehen

8

Interaktions-Heatmaps

Verfolgt, welche Elemente Agenten tatsächlich verwenden, unterdrückt unberührte Elemente (in Kürze)

9

Strategieauswahl

Adversarial Bandit (EXP3) für Stealth-Konfigurationsoptimierung (in Kürze)

LRU-Eviktion bei 500 Domains. Über

Install Server
A
security – no known vulnerabilities
A
license - permissive license
B
quality - B tier

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/anthonybono21-cloud/leapfrog'

If you have feedback or need assistance with the MCP directory API, please join our Discord server