Konfiguration

Sie können die Chrome-Entwicklertools für KI-Agenten konfigurieren, um die Interaktion mit dem Browser, die aktivierten Tools und die Datenverarbeitung anzupassen.

Konfigurieren Sie den Server, indem Sie Befehlszeilen-Flags im args-Array Ihrer MCP-Clientkonfigurationsdatei (Model Context Protocol) übergeben. Dies ist normalerweise die Datei config.json.

Wenn Sie Chrome beispielsweise im monitorlosen Modus ausführen und den Canary-Channel verwenden möchten, verwenden Sie die folgende Konfiguration:

{
  "mcpServers": {
    "chrome-devtools": {
      "command": "npx",
      "args": [
        "-y",
        "chrome-devtools-mcp@latest",
        "--headless",
        "--channel=canary"
      ]
    }
  }
}

Häufige Konfigurationsszenarien

In den folgenden Szenarien werden gängige Methoden zum Konfigurieren der Chrome-Entwicklertools für KI-Agenten beschrieben.

Im monitorlosen Modus ausführen

Wenn Sie Hintergrundaufgaben ohne sichtbares Browserfenster ausführen möchten, führen Sie Chrome im monitorlosen Modus (ohne Benutzeroberfläche) aus. Fügen Sie Ihren Serverargumenten das Flag --headless hinzu.

Mit einer vorhandenen Browsersitzung verbinden

Standardmäßig starten die Entwicklertools für KI-Agenten eine neue Chrome-Instanz. Sie können Ihren KI-Agenten jedoch mit einer vorhandenen Browsersitzung verbinden. Das ist nützlich, wenn der KI-Agent ein Problem in einer bereits gestarteten Sitzung untersuchen muss (z. B. wenn Sie bereits angemeldet sind).

Sie können auf zwei Arten eine Verbindung zu einer vorhandenen Sitzung herstellen:

Automatische Verbindung (Chrome 144+)

Wenn Sie das Flag --autoConnect verwenden, stellt der MCP-Server automatisch eine Verbindung zu einer aktiven Chrome-Instanz her.

  1. Rufen Sie in Ihrem laufenden Chrome-Browser chrome://inspect/#remote-debugging auf und aktivieren Sie Remote-Debugging.
  2. Fügen Sie --autoConnect zu Ihrer MCP-Konfiguration hinzu: json "args": ["chrome-devtools-mcp@latest", "--autoConnect"]
  3. Wenn der Agent versucht, eine Verbindung herzustellen, wird in Chrome ein Dialogfeld angezeigt, in dem um Erlaubnis gebeten wird. Klicken Sie auf Zulassen.

Manuelle Verbindung

Wenn Sie --autoConnect nicht verwenden können (z. B. in einer Sandbox-Umgebung), können Sie Chrome manuell mit einem Debugging-Port starten und eine Verbindung über --browser-url herstellen.

  1. Starten Sie Chrome über das Terminal mit aktiviertem Remote-Debugging und einem benutzerdefinierten Nutzerdatenverzeichnis.
    • macOS: shell /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-profile-stable
    • Windows: shell start chrome --remote-debugging-port=9222 --user-data-dir=%TEMP%\chrome-profile-stable
    • Linux: shell google-chrome --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-profile-stable
  2. Konfigurieren Sie Ihren Agent so, dass er eine Verbindung zu diesem Port herstellt: json "args": ["chrome-devtools-mcp@latest", "--browser-url=http://127.0.0.1:9222"]

Dateizugriff außerhalb des temporären Verzeichnisses zulassen

Tools, die Dateien lesen oder schreiben (z. B. Screenshots oder Traces speichern oder Erweiterungen laden), können nur auf Pfade innerhalb der konfigurierten Arbeitsbereich-Roots zugreifen. Der Server verwendet die Roots, die Ihr MCP-Client über die MCP-Roots-Funktion bereitstellt, sowie alle Verzeichnisse, die Sie mit --filesystemRoot (Alias --workspace) übergeben. Wenn Ihr Client keine Roots bereitstellt und Sie --filesystemRoot nicht festlegen, ist der Dateizugriff auf das temporäre Verzeichnis des Betriebssystems beschränkt. Anfragen für andere Pfade schlagen mit einem Access denied: ... is not within any of the configured workspace roots-Fehler fehl.

Wenn Sie den Zugriff auf ein Projektverzeichnis zulassen möchten, fügen Sie --filesystemRoot zu Ihren Serverargumenten hinzu. Sie können das Flag wiederholen, um mehrere Verzeichnisse zuzulassen:

"args": ["chrome-devtools-mcp@latest", "--filesystemRoot=/path/to/project"]

Referenz zu Konfigurationsoptionen

In den folgenden Abschnitten sind die verfügbaren Konfigurationsflags aufgeführt. Die neuesten Optionen und Updates finden Sie im GitHub-Repository für Chrome-Entwicklertools-MCP.

Verbindungsoptionen

Mit diesen Optionen können Sie konfigurieren, wie der Server eine Verbindung zu Chrome herstellt.

Flag Typ Standard Beschreibung
--autoConnect oder --auto-connect boolean false Stellt automatisch eine Verbindung zu einer lokal ausgeführten Chrome-Instanz (144+) her. Erfordert, dass das Remote-Debugging mit chrome://inspect/#remote-debugging aktiviert ist.
--browserUrl oder --browser-url
-u
String false Stellen Sie eine Verbindung zu einer laufenden, debuggbaren Chrome-Instanz her (z. B. http://127.0.0.1:9222).
--wsEndpoint oder --ws-endpoint
-w
String false WebSocket-Endpunkt zum Herstellen einer Verbindung mit einer laufenden Chrome-Instanz (z. B. ws://127.0.0.1:9222/devtools/browser/<id>). Alternative zu --browserUrl.
--wsHeaders oder --ws-headers String false Benutzerdefinierte Header für die WebSocket-Verbindung im JSON-Format (z. B. '{"Authorization":"Bearer token"}'). Funktioniert nur mit --wsEndpoint.

Optionen für den Browserstart

Diese Optionen gelten, wenn der MCP-Server Chrome startet.

Flag Typ Standard Beschreibung
--headless boolean false Führt Chrome im monitorlosen Modus (ohne Benutzeroberfläche) aus.
--channel String stable Gibt den zu verwendenden Chrome-Channel an. Auswahlmöglichkeiten: canary, dev, beta und stable.
--executablePath oder --executable-path
-e
String false Pfad zu einer benutzerdefinierten ausführbaren Chrome-Datei.
--userDataDir oder --user-data-dir String Siehe: Beschreibung Pfad zum Nutzerdatenverzeichnis. Standardwert ist $HOME/.cache/chrome-devtools-mcp/chrome-profile$CHANNEL_SUFFIX_IF_NON_STABLE.
--isolated boolean false Erstellt ein temporäres Nutzerdatenverzeichnis, das beim Schließen des Browsers automatisch bereinigt wird.
--viewport String false Anfängliche Darstellungsbereichsgröße (z. B. 1280x720). Im monitorlosen Modus beträgt die maximale Größe 3840x2160.
--proxyServer oder --proxy-server String false An Chrome übergebene Proxyserver-Konfiguration.
--chromeArg oder --chrome-arg Array false Zusätzliche Argumente, die an Chrome übergeben werden sollen.
--ignoreDefaultChromeArg oder --ignore-default-chrome-arg Array false Standardargumente für Chrome explizit deaktivieren.

Sicherheits- und Datenschutzoptionen

Mit diesen Optionen können Sie Sicherheitseinstellungen und Datenschutz verwalten.

Flag Typ Standard Beschreibung
--acceptInsecureCerts oder --accept-insecure-certs boolean false Fehler im Zusammenhang mit selbst signierten und abgelaufenen Zertifikaten werden ignoriert. Mit Vorsicht zu verwenden.
--blockedUrlPattern oder --blocked-url-pattern Array false Schränkt den Netzwerkzugriff ein, indem bestimmte URL-Muster blockiert werden (verwendet URLPattern). Navigationen und untergeordnete Ressourcen werden blockiert.
--allowedUrlPattern oder --allowed-url-pattern Array false Beschränkt den Netzwerkzugriff, indem nur angegebene URL-Muster zugelassen werden. Chrome 149 oder höher erforderlich.
--redactNetworkHeaders oder --redact-network-headers boolean false Entfernt vertrauliche Netzwerkheader, bevor sie an den Client zurückgegeben werden.
--usageStatistics oder --usage-statistics boolean true Ermöglicht die Erfassung von Nutzungsstatistiken, um das Tool zu verbessern. Kann auch mit den Umgebungsvariablen CHROME_DEVTOOLS_MCP_NO_USAGE_STATISTICS oder CI deaktiviert werden.
--performanceCrux oder --performance-crux boolean true Sendet URLs aus Leistungstraces an die Google CrUX API, um Daten zur tatsächlichen Nutzererfahrung abzurufen.
--javascriptEvaluation oder --javascript-evaluation boolean true Legen Sie false fest, um die JavaScript-Ausführung zu deaktivieren. Wenn diese Option deaktiviert ist, sind die Tools zur Skriptauswertung deaktiviert, der Parameter initScript von navigate_page ist deaktiviert und das Aufrufen von javascript:-, data:- oder vbscript:-URLs ist nicht zulässig.
--filesystemRoot oder --filesystem-root
--workspace
Array Temporäres Verzeichnis des Betriebssystems Ein Verzeichnis, das von Tools für den Dateizugriff verwendet werden darf, zusätzlich zu den vom MCP-Client bereitgestellten Stammverzeichnissen. Kann mehrmals angegeben werden. Weitere Informationen finden Sie unter Dateizugriff außerhalb des temporären Verzeichnisses zulassen.
--allowUnrestrictedPaths oder --allow-unrestricted-paths boolean false Nicht mehr unterstützt: Verwenden Sie stattdessen --workspace=/. Deaktiviert die Pfadeinschränkung, die gilt, wenn der MCP-Client keine Roots bereitstellt.

Funktionskategorien

Mit diesen Flags können Sie Gruppen von Tools aktivieren oder deaktivieren.

Flag Typ Standard Beschreibung
--categoryInput oder --category-input boolean true Aktiviert Tools für die Eingabe.
--categoryNavigation oder --category-navigation boolean true Aktiviert Tools für die Navigation.
--categoryEmulation oder --category-emulation boolean true Aktiviert Tools für die Emulation.
--categoryNetwork oder --category-network boolean true Aktiviert netzwerkbezogene Tools.
--categoryPerformance oder --category-performance boolean true Aktiviert Tools zur Leistungssteigerung.
--categoryDebugging oder --category-debugging boolean true Aktiviert Tools für das Debugging.
--categoryMemory oder --category-memory boolean true Aktiviert Tools im Zusammenhang mit dem Arbeitsspeicher.
--categoryExtensions oder --category-extensions boolean false Aktiviert Tools für Erweiterungen. Wird nur mit Pipe-Verbindung unterstützt.
--categoryPwa oder --category-pwa boolean false Aktiviert Tools zur Automatisierung von progressiven Web-Apps (Installation, Start, Deinstallation und Betriebssystemstatus). Wird nur bei Rohrverbindungen unterstützt.
--categoryExperimentalThirdParty oder --category-experimental-third-party boolean false Aktiviert Entwicklertools von Drittanbietern, die von der geprüften Seite bereitgestellt werden.
--categoryExperimentalWebmcp oder --category-experimental-webmcp boolean false Ermöglicht das Debugging von WebMCP-Tools. Erfordert Chrome 149 oder höher mit aktivierten WebMCP-Funktionen.
--memoryDebugging oder --memory-debugging boolean false Aktiviert Tools zur Fehlerbehebung im Arbeitsspeicher.

Screenshot-Optionen

Mit diesen Optionen können Sie anpassen, wie der Agent Screenshots aufnimmt.

Flag Typ Standard Beschreibung
--screenshotFormat oder --screenshot-format String false Überschreibt das Standardausgabeformat (png). Optionen: jpeg, png und webp. Die Formate jpeg und webp sind kleiner, was dazu beiträgt, die Kontextgröße in KI-Unterhaltungen zu reduzieren.
--screenshotQuality oder --screenshot-quality Zahl false Überschreibt die Komprimierungsqualität (0–100) für jpeg und webp.
--screenshotMaxWidth oder --screenshot-max-width Zahl false Maximale Breite in Pixeln. Größere Screenshots werden verkleinert.
--screenshotMaxHeight oder --screenshot-max-height Zahl false Maximale Höhe in Pixeln. Größere Screenshots werden verkleinert.

Experimentelle Optionen

Mit diesen Optionen können Sie experimentelle Funktionen aktivieren, die sich noch in der Entwicklung befinden.

Flag Typ Standard Beschreibung
--experimentalDevtools oder --experimental-devtools boolean false Ermöglicht die Automatisierung von DevTools-Zielen.
--experimentalVision oder --experimental-vision boolean false Ermöglicht koordinatenbasierte Tools (z. B. click_at). Erfordert in der Regel ein Modell für die Computernutzung, das genaue Koordinaten anhand von Screenshots erstellen kann.
--experimentalStructuredContent oder --experimental-structured-content boolean false Gibt strukturierte formatierte Inhalte aus.
--experimentalIncludeAllPages oder --experimental-include-all-pages boolean false Umfasst alle Arten von Seiten, z. B. Webviews und Hintergrundseiten.
--experimentalScreencast oder --experimental-screencast boolean false Stellt Screencast-Tools bereit (erfordert ffmpeg in PATH).
--experimentalFfmpegPath oder --experimental-ffmpeg-path String false Pfad zur ausführbaren Datei ffmpeg.
--experimentalScreencastFps oder --experimental-screencast-fps Zahl false Bilder pro Sekunde für die Screencast-Aufzeichnung. Niedrigere Werte können die Speicherauslastung auf Seiten verringern, auf denen Frames schneller als ffmpeg codiert werden können.

Weitere Optionen

Mit diesen Optionen können Sie Logging, Seitenrouting und Quellzuordnungen konfigurieren oder eine vereinfachte Reihe von Tools aktivieren.

Flag Typ Standard Beschreibung
--slim boolean false Es bietet nur drei Tools (Navigation, Skriptausführung und Screenshots). Nützlich für grundlegende Browseraufgaben.
--pageIdRouting oder --page-id-routing boolean true Erfordert pageId für seitenbezogene Tools und leitet Anfragen nach Seiten-ID weiter, was für gleichzeitige Agentensitzungen nützlich ist. Verwenden Sie zum Deaktivieren --no-page-id-routing.
--sourceMaps oder --source-maps boolean true Aktiviert Quellzuordnungen in den Entwicklertools. Verwenden Sie --no-source-maps zum Deaktivieren.
--logFile oder --log-file String false Pfad zu einer Datei, in die Debugging-Logs geschrieben werden sollen. Setzen Sie die Umgebungsvariable NODE_DEBUG auf *, um ausführliche Logs zu aktivieren.
--config String false Pfad zu einer JSON-Konfigurationsdatei.

Umgebungsvariablen

Sie können auch die folgenden Umgebungsvariablen verwenden, um den Server zu konfigurieren:

  • CHROME_DEVTOOLS_MCP_NO_USAGE_STATISTICS: Wenn festgelegt, wird die Erfassung von Nutzungsstatistiken deaktiviert (entspricht --no-usage-statistics).
  • CHROME_DEVTOOLS_MCP_NO_UPDATE_CHECKS: Wenn diese Option festgelegt ist, werden regelmäßige Suchen nach Updates deaktiviert.
  • CI: Wenn festgelegt, wird die Erhebung von Nutzungsstatistiken deaktiviert.
  • NODE_DEBUG: Auf * setzen, um das ausführliche Debug-Logging zu aktivieren (funktioniert in Verbindung mit --logFile).