Prototyp · Vorschau: alle Server aus der offiziellen Registry, alle 30 Minuten synchronisiert. Bewertungen und Benutzerkonten folgen in einem späteren Schritt.
PopNx MCPMCP-Server für alle, die KI nutzen · in einfachen Worten erklärt

nodriver — Chrome browser automation

von andresolbachVersion 2.6.1i★ –iLäuft auf deinem Computer
Name in der Registryio.github.andresolbach/nodriver-mcp-server

Installieren

Überblick

Beschreibung vom Entwickler (englisches Original)

Chrome automation via nodriver: 70 tools, isolated browsers, profiles and configurable startup.

Die drei Säulen von PopNx MCP

Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.

Was du damit machen kannst

Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.

  • Verbindung: Läuft auf deinem Computer
  • Transport: stdio
  • Kategorie: Web & Browser

Installation

Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.

Bevor du installierst

  • Basischecks: 1 von 1 bestanden
  • Läuft auf deinem Computer mit den Rechten deines Benutzerkontos (Dateien, Netzwerk, Apps).
  • Das trägst du selbst ein: NODRIVER_HEADLESS, NODRIVER_USER_DATA_DIR, NODRIVER_BROWSER_PATH, NODRIVER_PROXY

Du brauchst

  • PyPIuv für Python installiert (für den Befehl uvx)

Welche App nutzt du?

Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.

Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein

{
  "mcpServers": {
    "nodriver": {
      "command": "uvx",
      "args": [
        "nodriver-mcp"
      ],
      "env": {
        "NODRIVER_HEADLESS": "your-value",
        "NODRIVER_USER_DATA_DIR": "your-value",
        "NODRIVER_BROWSER_PATH": "your-value",
        "NODRIVER_PROXY": "your-value"
      }
    }
  }
}

Führe das in deinem Terminal aus

claude mcp add nodriver --env NODRIVER_HEADLESS=your-value --env NODRIVER_USER_DATA_DIR=your-value --env NODRIVER_BROWSER_PATH=your-value --env NODRIVER_PROXY=your-value -- uvx nodriver-mcp

Trag die leeren Werte ein, bevor du ihn startest.

In Cursor öffnen

Oder kopier die Einstellungen selbst

In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen

{
  "mcpServers": {
    "nodriver": {
      "command": "uvx",
      "args": [
        "nodriver-mcp"
      ],
      "env": {
        "NODRIVER_HEADLESS": "your-value",
        "NODRIVER_USER_DATA_DIR": "your-value",
        "NODRIVER_BROWSER_PATH": "your-value",
        "NODRIVER_PROXY": "your-value"
      }
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

In VS Code öffnen

Oder kopier die Einstellungen selbst

In .vscode/mcp.json in deinem Projekt einfügen

{
  "servers": {
    "nodriver": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "nodriver-mcp"
      ],
      "env": {
        "NODRIVER_HEADLESS": "your-value",
        "NODRIVER_USER_DATA_DIR": "your-value",
        "NODRIVER_BROWSER_PATH": "your-value",
        "NODRIVER_PROXY": "your-value"
      }
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.

Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.

Werte, die du selbst einträgst

  • NODRIVER_HEADLESS env
    Run Chrome headless (true/false). Default false.
  • NODRIVER_USER_DATA_DIR env
    Explicit persistent Chrome profile directory. Default: an ephemeral temp profile, auto-deleted per session.
  • NODRIVER_BROWSER_PATH env
    Path to the Chrome/Chromium executable. Auto-detected when unset.
  • NODRIVER_PROXY env
    Proxy server address passed to Chrome as --proxy-server.

Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.

Was er kann

Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.

Basischecksi

Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 7. Nov. 2026

  • ✓ Bestanden

    Entwickler passt zum Repo

    Der Registry-Name wurde mit dem GitHub-Konto andresolbach bestätigt, dem das Repo gehört

  • … Noch nicht geprüft

    Wird noch gepflegt

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • … Noch nicht geprüft

    Hat eine Lizenz

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • – Nicht zutreffend

    Endpunkt antwortet

    Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet

  • – Nicht zutreffend

    Anmeldung mit OAuth

    Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen

  • … Noch nicht geprüft

    Keine versteckten Anweisungen in Tool-Beschreibungen

    Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen

Im Vergleich mit anderen in Web & Browseri

  • Mehr Sterne als 0 % der anderen 881 Server in dieser Kategorie
  • Neuer in der Registry veröffentlicht als 61 % der anderen 881 Server in dieser Kategorie
  • Basischecks gleich gut wie oder besser als bei 100 % der anderen 881 Server in dieser Kategorie

Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.

Häufige Fragen

Ist nodriver — Chrome browser automation sicher?

Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.

Welche Schlüssel oder Codes braucht er?

Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.

Läuft er auf meinem Computer oder in der Cloud?

Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).

Wird er noch gepflegt?

Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (2.6.1) kam vor 22 Tagen in die Registry.

Welche Apps können ihn nutzen?

Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Python (uv) auf deinem Computer.

Was kann ich stattdessen nutzen?

In derselben Kategorie: Browser Use, Chrome DevTools MCP, MCP Server Browser

Alternativen

Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.

So liest du eine Karte:★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti

Browser Use

von browser-use

Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.

Computer oder Cloud★ 120.087MITAktualisiert vor 17 Tagen
Installieren

Chrome DevTools MCP

von ChromeDevTools

MCP server for Chrome DevTools

Läuft auf deinem Computer★ 54.821Apache-2.0Aktualisiert vor 16 Tagen
Installieren

MCP Server Browser

von bytedance

MCP server for browser use access

Läuft auf deinem Computer★ 39.550Apache-2.0Aktualisiert vor 14 Monaten
Installieren

README vom Entwickler

README öffnen

Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.

nodriver-mcp-server

Give your AI agent a full Chrome workspace. Browse, fill forms, extract data and inspect the requests behind a page with 70 MCP tools, powered by nodriver. Keep your logins, run isolated browsers side by side, and pick up where you left off with automatic tab restoration. One-command setup for Claude, Claude Code, Cursor, Windsurf, Codex and other Model Context Protocol clients.

Keywords: MCP server · browser automation · undetected chromedriver · anti-bot · Cloudflare bypass · web scraping · Claude · Cursor · nodriver · chrome-devtools-mcp alternative · Playwright/Puppeteer alternative · AI agent tools.

More browsing, less setup

  • Log in once, come back ready. Persistent profiles keep cookies and logins between sessions.
  • Start your way. Open a fresh tab, a set of favorite URLs, or the tabs you left open — configurable through MCP, per profile.
  • Give each task its own browser. Run up to 12 isolated browser sessions without sharing tabs, cookies or the selected page.
  • Get the data behind the page. Read accessibility snapshots, inspect API traffic and save response bodies for later search.
  • Automate real Chrome directly. nodriver, the successor of undetected-chromedriver, uses CDP without Selenium or a ChromeDriver binary and is designed to reduce common automation signals.

Explore the 70-tool reference, or get started with uvx nodriver-mcp.

Does it actually pass? Here is the evidence

Claiming "undetected" is easy, so here is what the standard fingerprint suite reports when this server drives the page itself. Reproduce it in one line: point your agent at https://bot.sannysoft.com and take a snapshot.

CheckResult
bot.sannysoft.com — Intoli + fingerprint suite58 checks, 0 failed
navigator.webdriverfalse — a boolean on Navigator.prototype, not an own property, exactly as in a normal browser
window.chromepresent
navigator.plugins5
navigator.languages4 entries
User agentno Headless token

Measured on Chrome 151 / Windows 11, headful, with the default profile. The current functional test suite uses Chrome 155 and nodriver 0.50.6. See Scope and limitations for how to interpret the fingerprint result.

Features

  • 🕵️ Direct CDP automation — nodriver avoids Selenium and a ChromeDriver binary and is designed to reduce common automation signals.
  • ☁️ Cloudflare checkbox helper (cf_verify, needs the [cf] extra); success depends on the challenge and browser configuration.
  • 🖼️ Frames are not a blind spot — list_frames plus a frame argument on the readers, and take_snapshot splices each iframe's tree in under the element hosting it, so a payment field or consent wall inside one gets a uid and can be clicked and filled like anything else.
  • 🔍 A network log that says what happened — status, response headers, a DevTools-style timing breakdown (DNS, connect, TLS, time to first byte, download), the script and line that started each request, transfer size, redirect hops and failures, plus WebSocket frames and server-sent events. A 500, a 404, a redirect and a DNS failure are different lines, not the same one.
  • 💾 Response capture to disk — capture_bodies captures matching responses from tabs, workers and service workers before later navigation or buffer eviction can discard them. A JSON index records URL, POST data, status and headers; search_bodies searches saved traffic. Capture status reports saved bodies, skips and errors.
  • 🛡️ Passive security review built in — audit_security checks security headers (with a real CSP analysis: nonces, strict-dynamic, multiple policies), CORS, TLS and certificates of every origin, cookie flags, responses a CDN could serve to the wrong user, every first and third party the page talks to, and lists what Chrome's own Issues panel reports: CSP violations, mixed content, rejected cookies. inspect_storage inventories localStorage, sessionStorage, IndexedDB, Cache Storage and service workers, and decodes tokens it finds there. export_har writes everything to a HAR file for Burp, ZAP or DevTools — with the wire headers, Cookie and Set-Cookie included.
  • 👥 Several isolated browsers at once — pass browser: "agent-a" to any tool and that name gets its own Chrome, in its own process, with its own cookies, tabs and uids. Parallel agents stop stealing each other's selected tab. Omit it and nothing changes: the default browser runs in the server process, exactly as before. How it works
  • 🧩 70 tools covering navigation, input, snapshots, screenshots, content/PDF export, network + console inspection, device emulation, cookies/storage, sessions, profiles, and performance tracing.
  • 🧠 Schemas written for the agent, not just the compiler — every parameter carries a description, fixed-value options are real enums, and each tool declares read-only/destructive hints. See why this matters.
  • 📄 Compact accessibility-tree snapshots (take_snapshot) — searchable page text with a uid per element. Measured on the Hacker News front page: 27 KB against 97 KB unfiltered, 72% smaller, with every link, URL and text preserved. Same-origin URLs are printed relative to the page, which is lossless because the root node keeps the absolute one. That saving lands on every single agent step.
  • 🔗 Attach to a browser you are already signed into (use_running_browser) — drive your real Chrome profile over its debugging port instead of rebuilding logins in a fresh one.
  • 📱 Device emulation (Pixel 7, iPad) with correct UA / client hints.
  • ✅ Actions that verify themselves — fill reads the value back, set_checked reads the checked state back, and click, press_key and type_text report when no input event reached the page. A tool that cannot confirm what it did says so instead of reporting success.
  • 💾 Session save/restore — persist logins across runs.
  • 🧬 Ephemeral by default, persistent when needed — each session gets its own temporary Chrome profile. Named persistent profiles retain logins and offer configurable startup: a new tab (default), specified URLs, or the previous tabs without a restore-button click.
  • ⚡ One-command setup for 15+ MCP clients.

Installation

# Recommended: isolated install, won't touch your global Python environment

uv tool install nodriver-mcp

or with pip

pip install nodriver-mcp

or run it without installing anything

uvx nodriver-mcp

Requires uv for the first and third form. To track the development branch instead of a release:

uv tool install "nodriver-mcp @ git+https://github.com/andresolbach/nodriver-mcp-server.git@main"

Also listed in the official MCP Registry as io.github.andresolbach/nodriver-mcp-server, so clients and marketplaces that read the registry can find and install it directly.

Uses upstream nodriver >=0.50.6, tested against Chrome 155. uv tool install keeps dependencies isolated from your global Python environment.

You'll also need a local installation of Google Chrome (auto-detected).

Upgrade
uv tool upgrade nodriver-mcp

Requirements & tested versions

The automated suite runs schema, documentation and behavior checks plus real-browser integration tests. The current Windows browser test environment is Chrome 155 / nodriver 0.50.6 / Python 3.12.11. CI also runs the non-browser suite on macOS and Linux. Future Chrome or nodriver releases can require compatibility updates.

ComponentRequirementVerified version
Python3.12+3.12.11
Google Chromeany recent stable155.0.8059.79
Operating systemWindows / macOS / LinuxWindows 11
nodriver>= 0.50.60.50.6
mcp (MCP SDK)>= 1.26.0, < 21.26.0
pillow>= 12.1.112.1.1
tomli-w>= 1.0.01.2.0

Runtime dependency ranges and tested versions are listed in requirements.txt. uv tool install creates an isolated installation; contributors can use uv sync --locked --group dev in this repository to reproduce the committed dependency set.

One-command MCP client setup

# Interactive client selector (terminal TUI)

nodriver-mcp install

Install to specific clients

nodriver-mcp install claude,cursor,kiro

Uninstall

nodriver-mcp uninstall claude

List all supported clients

nodriver-mcp --list-clients

Print MCP config JSON (for manual setup)

nodriver-mcp --config

Project-level config (writes to .cursor/mcp.json, .mcp.json, etc.)

nodriver-mcp install --scope project

Supported clients: Claude Desktop, Claude Code, Cursor, Windsurf, Codex, Gemini CLI, Copilot CLI, Kiro, VS Code, Cline, Roo Code, Amazon Q, Warp, Opencode, Trae.

The Claude Code VS Code extension shares Claude Code's config (~/.claude.json), so installing to claude-code covers both the CLI and the extension.

Manual config

If you'd rather paste it yourself, this works in any MCP client (claude_desktop_config.json, ~/.claude.json, .cursor/mcp.json, .mcp.json, …):

{

"mcpServers": { "nodriver": { "command": "uvx", "args": ["nodriver-mcp"] } } }

Environment Variables

VariableDescriptionDefault
NODRIVER_HEADLESSHeadless mode (true/false)false
NODRIVER_USER_DATA_DIRExplicit persistent Chrome profile dir (overrides the default)Ephemeral temp profile, auto-deleted per session
NODRIVER_BROWSER_PATHChrome executable pathAuto-detected
NODRIVER_PROXYProxy server addressNone
NODRIVER_BROWSER_URLAttach to a Chrome already running at this address (e.g. http://127.0.0.1:9222) instead of launching oneLaunch our own
NODRIVER_ENABLE_TRANSLATESet true to re-enable Chrome's Google Translate popupDisabled
NODRIVER_ENABLE_EXTENSIONSSet true to allow externally-installed Chrome extensions (and their prompts)Disabled

By default the browser starts clean for automation: the Google Translate popup is suppressed and externally-installed Chrome extensions are blocked (so you don't get "an extension requires your attention" prompts). Re-enable either via the env vars above or at runtime with the `set_browser_flags` tool — whic

Nur der Anfang wird gezeigt; den Rest findest du im Repo

PopNx fragen