Configuration

Vous pouvez configurer les outils de développement Chrome pour les agents afin de personnaliser leur interaction avec le navigateur, les outils activés et la façon dont ils gèrent les données.

Configurez le serveur en transmettant des options de ligne de commande dans le tableau args de votre fichier de configuration client MCP (Model Context Protocol). Il s'agit généralement du fichier config.json.

Par exemple, pour exécuter Chrome en mode headless et utiliser le canal Canary, utilisez la configuration suivante :

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

Scénarios de configuration courants

Les scénarios suivants décrivent des méthodes courantes de configuration des outils de développement Chrome pour les agents.

Exécuter en mode headless

Pour effectuer des tâches en arrière-plan sans fenêtre de navigateur visible, exécutez Chrome en mode headless (sans interface utilisateur). Ajoutez l'option --headless aux arguments de votre serveur.

Se connecter à une session de navigateur existante

Par défaut, les outils de développement pour les agents démarrent une nouvelle instance Chrome. Toutefois, vous pouvez connecter votre agent à une session de navigateur existante. Cela est utile si votre agent doit examiner un problème dans une session que vous avez déjà démarrée (par exemple, si vous êtes déjà connecté).

Vous pouvez vous connecter à une session existante de deux manières :

Connexion automatique (Chrome 144 ou version ultérieure)

Si vous utilisez l'option --autoConnect, le serveur MCP se connecte automatiquement à une instance Chrome active.

  1. Dans votre navigateur Chrome en cours d'exécution, accédez à chrome://inspect/#remote-debugging et activez le débogage à distance.
  2. Ajoutez --autoConnect à votre configuration MCP : json "args": ["chrome-devtools-mcp@latest", "--autoConnect"]
  3. Lorsque l'agent tente de se connecter, Chrome affiche une boîte de dialogue demandant l'autorisation. Cliquez sur Autoriser.

Connexion manuelle

Si vous ne pouvez pas utiliser --autoConnect (par exemple, dans un environnement en bac à sable), vous pouvez démarrer Chrome manuellement avec un port de débogage et vous connecter à l'aide de --browser-url.

  1. Démarrez Chrome à partir du terminal avec le débogage à distance activé et un répertoire de données utilisateur personnalisé.
    • 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. Configurez votre agent pour qu'il se connecte à ce port : json "args": ["chrome-devtools-mcp@latest", "--browser-url=http://127.0.0.1:9222"]

Documentation de référence sur les options de configuration

Les sections suivantes listent les options de configuration disponibles. Pour obtenir les dernières options et mises à jour, consultez le dépôt GitHub Outils pour les développeurs Chrome MCP.

Options de connexion

Utilisez ces options pour configurer la façon dont le serveur se connecte à Chrome.

Option Type Par défaut Description
--autoConnect ou --auto-connect booléen false Se connecte automatiquement à une instance Chrome en cours d'exécution locale (144 ou version ultérieure). Nécessite que le débogage à distance soit activé à l'aide de chrome://inspect/#remote-debugging.
--browserUrl ou --browser-url
-u
chaîne false Se connecter à une instance Chrome en cours d'exécution et débogable (par exemple, http://127.0.0.1:9222).
--wsEndpoint ou --ws-endpoint
-w
chaîne false Point de terminaison WebSocket pour se connecter à une instance Chrome en cours d'exécution (par exemple, ws://127.0.0.1:9222/devtools/browser/<id>). Alternative à --browserUrl.
--wsHeaders ou --ws-headers chaîne false En-têtes personnalisés pour la connexion WebSocket au format JSON (par exemple, '{"Authorization":"Bearer token"}'). Ne fonctionne qu'avec --wsEndpoint.

Options de lancement du navigateur

Ces options s'appliquent lorsque le serveur MCP démarre Chrome.

Option Type Par défaut Description
--headless booléen false Exécute Chrome en mode headless (sans interface utilisateur).
--channel chaîne stable Spécifie le canal Chrome à utiliser. Choix : canary, dev, beta et stable.
--executablePath ou --executable-path
-e
chaîne false Chemin d'accès à un exécutable Chrome personnalisé.
--userDataDir ou --user-data-dir chaîne Voir la description Chemin d'accès au répertoire de données utilisateur. La valeur par défaut est $HOME/.cache/chrome-devtools-mcp/chrome-profile$CHANNEL_SUFFIX_IF_NON_STABLE.
--isolated booléen false Crée un répertoire de données utilisateur temporaire qui est automatiquement nettoyé lorsque le navigateur se ferme.
--viewport chaîne false Taille initiale de la fenêtre d'affichage (par exemple, 1280x720). En mode headless, la taille maximale est 3840x2160.
--proxyServer ou --proxy-server chaîne false Configuration du serveur proxy transmise à Chrome.
--chromeArg ou --chrome-arg tableau false Arguments supplémentaires à transmettre à Chrome.
--ignoreDefaultChromeArg ou --ignore-default-chrome-arg tableau false Désactive explicitement les arguments par défaut pour Chrome.

Options de sécurité et de confidentialité

Utilisez ces options pour gérer les paramètres de sécurité et la confidentialité des données.

Option Type Par défaut Description
--acceptInsecureCerts ou --accept-insecure-certs booléen false Ignore les erreurs liées aux certificats auto-signés et expirés. À utiliser avec précaution.
--blockedUrlPattern ou --blocked-url-pattern tableau false Restreint l'accès au réseau en bloquant les modèles d'URL spécifiés (utilise URLPattern). Bloque les navigations et les sous-ressources.
--allowedUrlPattern ou --allowed-url-pattern tableau false Restreint l'accès au réseau en n'autorisant que les modèles d'URL spécifiés. Nécessite Chrome 149 ou une version ultérieure.
--redactNetworkHeaders ou --redact-network-headers booléen false Masque les en-têtes réseau sensibles avant de les renvoyer au client.
--usageStatistics ou --usage-statistics booléen true Active la collecte de statistiques d'utilisation pour améliorer l'outil. Peut également être désactivé à l'aide des variables d'environnement CHROME_DEVTOOLS_MCP_NO_USAGE_STATISTICS ou CI.
--performanceCrux ou --performance-crux booléen true Envoie des URL à partir de traces de performances à l'API Google CrUX pour récupérer des données d'expérience utilisateur réelles.

Types de fonctionnalités

Vous pouvez activer ou désactiver des groupes d'outils à l'aide de ces options.

Option Type Par défaut Description
--categoryEmulation ou --category-emulation booléen true Active les outils liés à l'émulation.
--categoryNetwork ou --category-network booléen true Active les outils liés au réseau.
--categoryPerformance ou --category-performance booléen true Active les outils liés aux performances.
--categoryExtensions ou --category-extensions booléen false Active les outils liés aux extensions. Uniquement compatible avec la connexion de canalisation.
--categoryExperimentalThirdParty ou --category-experimental-third-party booléen false Active les outils de développement tiers exposés par la page inspectée.
--categoryExperimentalWebmcp ou --category-experimental-webmcp booléen false Active le débogage des outils WebMCP. Nécessite Chrome 149 ou une version ultérieure avec les fonctionnalités WebMCP activées.
--memoryDebugging ou --memory-debugging booléen false Active les outils de débogage de la mémoire.

Options de capture d'écran

Utilisez ces options pour personnaliser la façon dont l'agent capture les captures d'écran.

Option Type Par défaut Description
--screenshotFormat ou --screenshot-format chaîne false Remplace le format de sortie par défaut (png). Choix : jpeg, png et webp. Les formats jpeg et webp sont plus petits, ce qui permet de réduire la taille du contexte dans les conversations d'IA.
--screenshotQuality ou --screenshot-quality nombre false Remplace la qualité de compression (0-100) pour jpeg et webp.
--screenshotMaxWidth ou --screenshot-max-width nombre false Largeur maximale en pixels. Les captures d'écran plus grandes sont réduites.
--screenshotMaxHeight ou --screenshot-max-height nombre false Hauteur maximale en pixels. Les captures d'écran plus grandes sont réduites.

Options expérimentales

Utilisez ces options pour activer les fonctionnalités expérimentales en cours de développement.

Option Type Par défaut Description
--experimentalPageIdRouting ou --experimental-page-id-routing booléen false Expose pageId sur les outils à portée de page pour acheminer les requêtes dans les sessions d'agent simultanées.
--experimentalDevtools ou --experimental-devtools booléen false Active l'automatisation sur les cibles des outils de développement.
--experimentalVision ou --experimental-vision booléen false Active les outils basés sur les coordonnées (par exemple, click_at). Nécessite généralement un modèle d'utilisation de l'ordinateur capable de produire des coordonnées précises en examinant les captures d'écran.
--experimentalStructuredContent ou --experimental-structured-content booléen false Génère du contenu structuré mis en forme.
--experimentalIncludeAllPages ou --experimental-include-all-pages booléen false Inclut tous les types de pages (par exemple, les WebViews et les pages d'arrière-plan).
--experimentalScreencast ou --experimental-screencast booléen false Expose les outils de screencast (nécessite ffmpeg dans PATH).
--experimentalFfmpegPath ou --experimental-ffmpeg-path chaîne false Chemin d'accès à l'exécutable ffmpeg.

Autres options

Utilisez ces options pour configurer la journalisation ou activer un ensemble d'outils simplifié.

Option Type Par défaut Description
--slim booléen false Expose un ensemble limité de trois outils (navigation, exécution de scripts et captures d'écran). Utile pour les tâches de navigateur de base.
--logFile ou --log-file chaîne false Chemin d'accès à un fichier dans lequel écrire les journaux de débogage.

Variables d'environnement

Vous pouvez également utiliser les variables d'environnement suivantes pour configurer le serveur :

  • CHROME_DEVTOOLS_MCP_NO_USAGE_STATISTICS : si elle est définie, désactive la collecte de statistiques d'utilisation (équivalent à --no-usage-statistics).
  • CHROME_DEVTOOLS_MCP_NO_UPDATE_CHECKS : si elle est définie, désactive les vérifications périodiques des mises à jour.
  • CI : si elle est définie, désactive la collecte de statistiques d'utilisation.
  • DEBUG : définissez la valeur sur * pour activer la journalisation détaillée du débogage (fonctionne en association avec --logFile).