Alle Integrationen

Einen MCP-Client mit Guard.ch verbinden

Gib einem KI-Agenten einen echten, isolierten Chrome-Browser über einen einzigen gehosteten Model-Context-Protocol-Endpunkt.

Guard.ch betreibt einen gehosteten MCP-Server über Streamable HTTP. Claude Code, Cursor, VS Code, Windsurf, Codex CLI, Gemini CLI und andere Clients, die Authentifizierungs-Header unterstützen, verbinden sich mit einer einzigen URL und erhalten 21 Browser-Tools.

Es gibt keinen lokalen Browser-Dienst und keinen Modell-API-Schlüssel zu konfigurieren. Dein Client bringt das Modell mit; Guard.ch liefert den isolierten Browser, den Sitzungs-Lebenszyklus und auf Wunsch die Übergabe an einen Menschen.

Das brauchst du

Endpunkt
https://api.guard.ch/mcp
Transport
Streamable HTTP
Authentifizierung
Ein App-Schlüssel von Guard.ch
Plan
Jeder aktive Guard.ch-Plan
Parallelität
Eine laufende Browser-Sitzung pro Benutzer

Endpunkt und Authentifizierung

Verbinde den Client mit diesem einen MCP-Endpunkt:

https://api.guard.ch/mcp

Übergib einen App-Schlüssel von Guard.ch in einem dieser Header. Schlüssel in URLs werden abgewiesen, damit sie weder im Browserverlauf noch in Proxy-Logs oder Analysedaten landen:

  • Authorization: Bearer YOUR_API_KEY als Bearer-Token im Authorization-Header (empfohlen)
  • x-api-key: YOUR_API_KEY in einem x-api-key-Header

Client verbinden

Wähle das passende Beispiel und ersetze YOUR_API_KEY durch einen App-Schlüssel aus deinem Dashboard. Ein Client, der keinen Authentifizierungs-Header senden kann, wird vom App-Schlüssel-Endpunkt nicht unterstützt.

Claude Code

claude mcp add --transport http guardch https://api.guard.ch/mcp \
  --header "Authorization: Bearer YOUR_API_KEY"

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "guardch": {
      "url": "https://api.guard.ch/mcp",
      "headers": { "Authorization": "Bearer YOUR_API_KEY" }
    }
  }
}

VS Code

code --add-mcp '{"name":"guardch","type":"http","url":"https://api.guard.ch/mcp","headers":{"Authorization":"Bearer YOUR_API_KEY"}}'

Windsurf (~/.codeium/windsurf/mcp_config.json)

{
  "mcpServers": {
    "guardch": {
      "serverUrl": "https://api.guard.ch/mcp",
      "headers": { "Authorization": "Bearer YOUR_API_KEY" }
    }
  }
}

Codex CLI

codex mcp add guardch --url https://api.guard.ch/mcp \
  --bearer-token-env-var GUARDCH_API_KEY

Gemini CLI

gemini mcp add --transport http guardch https://api.guard.ch/mcp \
  --header "Authorization: Bearer YOUR_API_KEY"

Verfügbare Tools

Der Server stellt 21 Tools mit strukturierten Resultaten und Sicherheits-Annotationen bereit. Ein Agent kann direkt mit browser_navigate beginnen: Guard.ch erstellt automatisch eine Sitzung und liefert einen Snapshot mit Ref-IDs für spätere Interaktionen.

Sitzungs-Lebenszyklus

ToolBeschreibung
browser_create_sessionStartet idempotent eine Sitzung, optional mit Anzeigename, Timeout, Bildschirmgrösse, Ausgangsland, Proxy oder Start-URL.
browser_list_sessionsListet aktive Sitzungen mit ihren IDs, Namen und Live-View-URLs auf.
browser_stop_sessionBeendet eine Sitzung und gibt ihren Browser-Slot wieder frei.
browser_get_usageZeigt die aktuelle Parallelität und die Sitzungszahlen der letzten 30 Tage.

Seitensteuerung

ToolBeschreibung
browser_navigateÖffnet eine URL und erstellt bei Bedarf automatisch eine Sitzung.
browser_navigate_backKehrt zur vorherigen Seite zurück.
browser_snapshotGibt einen Accessibility-Snapshot mit Ref-IDs zurück.
browser_clickKlickt ein Element anhand seiner Snapshot-Ref an.
browser_typeTippt Text in ein Eingabefeld und schickt ihn optional mit Enter ab.
browser_press_keyDrückt eine einzelne Taste, etwa Enter oder Escape.
browser_hoverFährt anhand der Snapshot-Ref mit dem Mauszeiger über ein Element.
browser_scrollScrollt um eine Pixeldistanz oder bringt ein Element in den sichtbaren Bereich.
browser_wait_forWartet auf Text, eine URL, einen Ladezustand oder das Verschwinden von Text.
browser_handle_dialogBestätigt oder verwirft den nächsten Browser-Dialog.
browser_select_optionWählt Optionen in einem Select-Element aus.
browser_screenshotErfasst den Viewport oder die ganze Seite als JPEG.
browser_evaluateFührt JavaScript auf der Seite aus und gibt das Resultat zurück.
browser_tab_newÖffnet einen neuen Tab.
browser_tab_selectWechselt zu einem anderen Tab.
browser_tab_closeSchliesst einen Tab.
browser_tab_listListet Tabs mit stabilen IDs, Titeln und URLs auf.

So verhalten sich Sitzungen

  • Automatische Erstellung. Der erste Aufruf eines Seiten-Tools erstellt eine Sitzung, wenn der App-Schlüssel gerade keine aktive hat. Hat der Schlüssel mehrere aktive Sitzungen, verlangt Guard.ch eine session_id, statt unvorhersehbar eine auszuwählen.
  • Automatisches Aufräumen. Eine Sitzung endet zwei Minuten nach dem letzten Tool-Aufruf oder CDP-Disconnect, spätestens aber bei ihrem absoluten Timeout. Mit browser_stop_session beendest du sie früher.
  • Übergabe an einen Menschen. Über die Live-View-URL kann eine Person zuschauen oder mit Maus und Tastatur übernehmen, etwa für ein Login oder ein Captcha.
  • Standortwahl. Wähle ein Ausgangsland oder eine Stadt, oder leite den Browser über deinen eigenen Proxy.
  • Eine Sitzung pro Benutzer. Pro Benutzer deines Plans steht ein gleichzeitiger Browser-Slot bereit. Solange dieser Slot belegt ist, lehnt Guard.ch neue Sitzungen ab, statt sie in eine Warteschlange zu stellen.

REST- und CDP-Zugriff

Dieselben Browser-Sitzungen gibt es auch ohne MCP. Erstelle und verwalte sie über die Guard.ch-API und verbinde dann Playwright oder Puppeteer mit dem zurückgegebenen CDP-Websocket.

  • POST /v8/web/sessions erstellt idempotent eine Sitzung, optional mit Bildschirmgrösse, und gibt connectUrl sowie liveViewUrl zurück
  • GET /v8/web/sessions listet aktive Sitzungen auf; mit status=all erhältst du die Historie der letzten 30 Tage
  • DELETE /v8/web/sessions/:id beendet eine Sitzung
  • GET /v8/web/usage gibt Nutzung und Parallelität zurück

Dieses Beispiel erstellt eine Sitzung. Übergib ihre connectUrl wie unten gezeigt an Playwright.

curl -X POST https://api.guard.ch/v8/web/sessions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"timeout":900,"country":"us","screen":{"width":1440,"height":900},"idempotencyKey":"task-123"}'
const browser = await chromium.connectOverCDP(session.connectUrl);

Nächste Schritte

Erstelle unter Apps einen Schlüssel, hinterlege den Endpunkt in deinem Client und bitte ihn, eine Seite zu öffnen. Brauchst du Hilfe mit einem Client oder planst du ein grösseres Deployment: Melde dich bei uns.

30 Tage gratis, nur ein paar Klicks entfernt.

Du hinterlegst eine Karte, aber wir belasten sie erst nach der Testphase. Die Kündigung ist jederzeit nur ein paar Klicks entfernt.

30 Tage testen