Browser MCP Server
Browser MCP Server
Ein MCP-Server (Model Context Protocol), der KI-Agenten über die Zyte API einen echten, gegen Anti-Bot-Maßnahmen gewappneten Browser bereitstellt – Seiten navigieren, klicken/tippen/scrollen, Screenshots aufnehmen und strukturierte Daten extrahieren, mit automatischer Proxy-/IP-Rotation und Umgehung von Sperren.
Entwickelt mit NestJS und dem Server-Paket @nestjs-mcp/server, das direkt per HTTP mit Zytes /extract-Endpunkt spricht. Der Transport ist ausschließlich Streamable HTTP; er wird zustandslos an einem einzigen /mcp-Endpunkt ausgeliefert.
Setup
Kopieren Sie
.env.examplein.envund füllen Sie die Werte aus:
Variable | Erforderlich | Beschreibung |
| ja | Ihr Zyte-API-Schlüssel |
| nein | Überschreibt die Basis-URL der Zyte-API (Standard: |
| nein | HTTP-Port (Standard: |
| nein | Timeout pro Anfrage an Zyte (Standard: |
| nein | Wiederholungen für Rate-Limit-Antworten (429/503) und vorübergehende Sperre (520) mit exponentiellem Backoff (Standard: |
Installieren Sie die Abhängigkeiten und starten Sie den Server:
pnpm install
pnpm run start:devDer MCP-Endpunkt wird unter http://localhost:3000/mcp bereitgestellt.
Related MCP server: Stealth Browser MCP
Tools
Tool | Rückgabe |
| Öffnet eine URL, führt optional Aktionen aus und liefert eine |
| Screenshot einer Seite, optional nach Ausführung von Aktionen |
| Von KI extrahierte strukturierte JSON-Daten, die einem von Ihnen angegebenen JSON-Schema entsprechen |
| Strukturierte Websuchergebnisse (Titel/URL/Snippet) über die Zyte-Such-API – hilfreich zum Auffinden von Seiten und anschließenden Öffnen mit |
browser_browse, browser_screenshot und browser_extract akzeptieren eine optionale sessionId (von einem vorherigen Aufruf zurückgegeben), um über mehrere Tool-Aufrufe hinweg dieselbe IP-Adresse und denselben Cookie-Speicher zu verwenden – nützlich, um eingeloggt zu bleiben oder bei einer auszuführenden mehrstufigen Aufgabe eine konstante IP zu halten. Beachten Sie: Laut Zytes Sitzungs-Dokumentation wird dabei kein tatsächlicher Browser-/Tab-Zustand (Formulareingaben, Scrollposition, offene Modal-Dialoge usw.) zwischen den Aufrufen beibehalten; jeder Aufruf lädt eine frische Seite mit derselben Netzwerkidentität und denselben Cookies.
actions ist eine Sequenz von Schritten, die ausgeführt werden, bevor das Ergebnis erfasst wird: click, type, select, hover, keyPress, scrollBottom, scrollTo, waitForSelector, waitForTimeout, waitForNavigation, goto, evaluate. Aktionen, die Elemente anvisieren, nehmen ein Feld selector: { type: "css" | "xpath", value: string } entgegen.
browser_search sendet an den separaten /v1/search-Endpunkt von Zyte (nicht /v1/extract) und nimmt die Parameter domain (eine unterstützte Suchmaschine, z. B. "google.com"), query sowie optional maxResults (10-100) / geolocation / locale entgegen.
Rate-Limit-Antworten (429/503) und temporäre Sperren (520) von Zyte werden automatisch mit exponentiellem Backoff, bis zu BROWSER_MAX_RETRIES Mal, wiederholt – gemäß Zytes Dokumentation zur Fehlerbehandlung. Alle anderen Fehlerantworten (ungültige Anfrage, dauerhafte Sperre, deaktiviertes Konto) werden sofort gemeldet, wobei Zytes Fehler-type in der Nachricht enthalten ist, sofern verfügbar.
Verbinden eines Clients
Beispielkonfiguration für einen Remote-MCP-Client (z. B. Claude Desktop / Claude Code), der auf eine laufende Instanz verweist:
{
"mcpServers": {
"browser": {
"url": "http://localhost:3000/mcp"
}
}
}Testen
pnpm test # unit tests (service + resolver, global fetch mocked)
pnpm run lint # eslint
pnpm run build # type-check + compileUnit-Tests mocken das globale fetch, das für Zyte-Aufrufe verwendet wird. Um einen End-to-End-Test gegen die Live-API durchzuführen, starten Sie den Server mit einem echten ZYTE_API_KEY und verwenden Sie pnpm dlx @modelcontextprotocol/inspector http://localhost:3000/mcp oder curl, um initition → toles/call auszuführen.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to interact with web browsers using natural language, featuring automated browsing, form filling, vision-based element detection, and structured JSON responses for systematic browser control.61MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI agents to perform undetectable browser automation that bypasses Cloudflare, antibots, and social media blocks. Provides 105 tools for element extraction, network debugging, and real-world web scraping with a 98.7% success rate on protected sites.1,589MIT
- AlicenseAqualityBmaintenanceEnables AI agents to scrape any website by providing tools for JavaScript rendering, antibot bypass, and automatic captcha solving. It supports synchronous, asynchronous, and batch scraping operations with built-in proxy rotation.5207MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to fully control a browser for web automation, including navigation, clicking, typing, scrolling, screenshots, and DOM inspection, with session persistence and anti-bot bypass.21MIT
Related MCP Connectors
AI-powered browser automation — navigate, click, fill forms, and extract data from any website.
Reliable web access for AI agents: smart HTTP, rotating proxies, and full-browser rendering.
Enable language models to perform advanced AI-powered web scraping with enterprise-grade reliabili…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/feedmepos/browser-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server