From 33b93296bdb64ab5033400f2f5424c064d6f0152 Mon Sep 17 00:00:00 2001 From: Maruen Mehana Date: Wed, 29 Apr 2026 14:04:28 -0300 Subject: [PATCH] feat: add Claude plugin executablePath user config MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add a userConfig option for the executablePath CLI flag so users running the plugin via Claude Code can point at a custom Chrome binary without editing the plugin manifest in their plugin cache. Useful when the host has multiple Chrome installations — for example pointing at Chrome for Testing on macOS so the MCP-launched Chrome has a separate bundle ID (com.google.chrome.for.testing) and can be scripted unambiguously by AppleScript / OS automation tools without conflicting with the user's regular Chrome (com.google.Chrome). Mirrors the user_config.browserUrl pattern from #1851. Leaving the option blank keeps the existing auto-detected-stable-Chrome behavior — no opt-in cost. --- .claude-plugin/plugin.json | 9 ++++++++- README.md | 16 ++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json index 7bbde5828..2fc6cfa06 100644 --- a/.claude-plugin/plugin.json +++ b/.claude-plugin/plugin.json @@ -2,11 +2,18 @@ "name": "chrome-devtools-mcp", "version": "0.23.0", "description": "Reliable automation, in-depth debugging, and performance analysis in Chrome using Chrome DevTools and Puppeteer", + "userConfig": { + "executablePath": { + "description": "Optional path to a custom Chrome executable. Useful when the system has multiple Chrome installations (e.g. point at the Chrome for Testing binary so the MCP-launched Chrome stays separate from the user's regular Chrome and can be scripted unambiguously by AppleScript / OS automation tools). Leave blank to use the auto-detected stable Chrome.", + "sensitive": false + } + }, "mcpServers": { "chrome-devtools": { "command": "npx", "args": [ - "chrome-devtools-mcp@latest" + "chrome-devtools-mcp@latest", + "--executablePath=${user_config.executablePath}" ] } } diff --git a/README.md b/README.md index 9d18f1ab5..5c372a102 100644 --- a/README.md +++ b/README.md @@ -166,6 +166,22 @@ Then, install the plugin: Restart Claude Code to have the MCP server and skills load (check with `/skills`). +To point the plugin at a custom Chrome binary (e.g. [Chrome for Testing](https://developer.chrome.com/blog/chrome-for-testing/) so the MCP-launched Chrome has a separate bundle ID from the user's regular Chrome and can be scripted unambiguously by macOS AppleScript), set the plugin's `executablePath` option in your Claude Code settings: + +```json +{ + "pluginConfigs": { + "chrome-devtools-mcp@claude-plugins-official": { + "options": { + "executablePath": "/Applications/Google Chrome for Testing.app/Contents/MacOS/Google Chrome for Testing" + } + } + } +} +``` + +Leave `executablePath` blank to use the default behavior where Chrome DevTools MCP auto-detects stable Chrome. + > [!TIP] > If the plugin installation fails with a `Failed to clone repository` error (e.g., HTTPS connectivity issues behind a corporate firewall), see the [troubleshooting guide](./docs/troubleshooting.md#claude-code-plugin-installation-fails-with-failed-to-clone-repository) for workarounds, or use the CLI installation method above instead.