troubleshooting
chromedevtools/chrome-devtools-mcp
Diagnose and fix Chrome DevTools MCP connection and initialization failures.
What is troubleshooting?
A troubleshooting wizard that guides you through diagnosing Chrome DevTools MCP server setup issues. Use this skill when list_pages, new_page, navigate_page fail, or the server won't start. It walks through configuration checks, common error patterns, and diagnostic steps to restore connectivity.
- Locates and interprets MCP configuration files (.mcp.json, .claude/settings.json, etc.)
- Triages common connection errors like 'Could not find DevToolsActivePort' with step-by-step fixes
- Detects symptom patterns: empty profiles, missing tools, extension failures, and read-only mode restrictions
- Reads known issues from the official troubleshooting documentation
- Formulates corrected MCP configuration snippets for your environment
- Runs diagnostic commands (--help, DEBUG logs) to test the server directly
How to install troubleshooting
npx skills add https://github.com/chromedevtools/chrome-devtools-mcp --skill troubleshootingHow to use troubleshooting
- 1.Trigger this skill when a Chrome DevTools MCP operation fails
- 2.Allow the skill to search your workspace for configuration files (.mcp.json, .claude/settings.json, etc.)
- 3.Answer questions about your Chrome version and environment (OS, MCP client)
- 4.Follow the step-by-step diagnostic guidance provided
- 5.Enable remote debugging in Chrome if instructed (chrome://inspect/#remote-debugging)
- 6.Run diagnostic commands (like list_pages) to verify fixes
- 7.Provide error messages or logs if the skill requests them
Use cases
- Chrome DevTools MCP server fails to start or initialize
- list_pages, new_page, or navigate_page commands return errors
- Server starts but connects to wrong Chrome instance or creates empty profile
- Only a subset of tools are available (read-only mode active)
- Extension tools missing or extensions fail to load
- Developers setting up Chrome DevTools MCP for the first time
- Users troubleshooting MCP connection failures in Claude, Cursor, or Gemini CLI
- Anyone debugging Chrome automation or DevTools integration issues
troubleshooting FAQ
Trigger it when list_pages, new_page, navigate_page fail, or when the Chrome DevTools MCP server won't start or initialize.
This error is specific to the --autoConnect feature and means the MCP server cannot find the file created by a running, debuggable Chrome instance. Ensure Chrome is running and remote debugging is enabled at chrome://inspect/#remote-debugging.
Your MCP client may be enforcing read-only mode (e.g., 'Plan Mode' in Gemini CLI). Disable read-only mode to access tools that modify browser state like click, navigate_page, and emulate.
Check for typos in the MCP configuration arguments, especially flag names like --autoConnect. Verify the arguments match expected flags exactly.
Ensure the --categoryExtensions flag is passed in your MCP server configuration. Note that Chrome before version 149 cannot load extensions when connecting to an existing instance; you must launch Chrome instead.
Full instructions (SKILL.md)
Source of truth, from chromedevtools/chrome-devtools-mcp.
name: troubleshooting description: Uses Chrome DevTools MCP and documentation to troubleshoot connection and target issues. Trigger this skill when list_pages, new_page, or navigate_page fail, or when the server initialization fails.
Troubleshooting Wizard
You are acting as a troubleshooting wizard to help the user configure and fix their Chrome DevTools MCP server setup. When this skill is triggered (e.g., because list_pages, new_page, or navigate_page failed, or the server wouldn't start), follow this step-by-step diagnostic process:
Step 1: Find and Read Configuration
Your first action should be to locate and read the MCP configuration file. Search for the following files in the user's workspace: .mcp.json, gemini-extension.json, .claude/settings.json, .vscode/launch.json, or .gemini/settings.json.
If you find a configuration file, read and interpret it to identify potential issues such as:
- Incorrect arguments or flags.
- Missing environment variables.
- Usage of
--autoConnectin incompatible environments.
If you cannot find any of these files, only then should you ask the user to provide their configuration file content.
Step 2: Triage Common Connection Errors
Before reading documentation or suggesting configuration changes, check if the error message matches one of the following common patterns.
Error: Could not find DevToolsActivePort
This error is highly specific to the --autoConnect feature. It means the MCP server cannot find the file created by a running, debuggable Chrome instance. This is not a generic connection failure.
Your primary goal is to guide the user to ensure Chrome is running and properly configured. Do not immediately suggest switching to --browserUrl. Follow this exact sequence:
- Ask the user to confirm that the correct Chrome version (e.g., "Chrome Canary" if the error mentions it) is currently running.
- If the user confirms it is running, instruct them to enable remote debugging. Be very specific about the URL and the action: "Please open a new tab in Chrome, navigate to
chrome://inspect/#remote-debugging, and make sure the 'Enable remote debugging' checkbox is checked." - Once the user confirms both steps, your only next action should be to call the
list_pagestool. This is the simplest and safest way to verify if the connection is now successful. Do not retry the original, more complex command yet. - If
list_pagessucceeds, the problem is resolved. If it still fails with the same error, then you can proceed to the more advanced steps like suggesting--browserUrlor checking for sandboxing issues.
Symptom: Server starts but creates a new empty profile
If the server starts successfully but list_pages returns an empty list or creates a new profile instead of connecting to the existing Chrome instance, check for typos in the arguments.
- Check for flag typos: For example,
--autoBronnectinstead of--autoConnect. - Verify the configuration: Ensure the arguments match the expected flags exactly.
Symptom: Missing Tools / Only 9 tools available
If the server starts successfully but only a limited subset of tools (like list_pages, get_console_message, lighthouse_audit, take_heapsnapshot) are available, this is likely because the MCP client is enforcing a read-only mode.
All tools in chrome-devtools-mcp are annotated with readOnlyHint: true (for safe, non-modifying tools) or readOnlyHint: false (for tools that modify browser state, like emulate, click, navigate_page). To access the full suite of tools, the user must disable read-only mode in their MCP client (e.g., by exiting "Plan Mode" in Gemini CLI or adjusting their client's tool safety settings).
Symptom: Extension tools are missing or extensions fail to load
If the tools related to extensions (like install_extension) are not available, or if the extensions you load are not functioning:
- Check for the
--categoryExtensionsflag: Ensure this flag is passed in the MCP server configuration to enable the extension category tools. - Make sure the MCP server in configured to launch Chrome instead of connecting to an instance: Chrome before 149 is not able to load extensions when connecting to an existing instance (
--auto-connect,--browserUrl).
Other Common Errors
Identify other error messages from the failed tool call or the MCP initialization logs:
Target closed- "Tool not found" (check if they are using
--slimwhich only enables navigation and screenshot tools). - Missing
pageId: Page-scoped tools require apageIdargument. Calllist_pagesto find active page IDs. ProtocolError: Network.enable timed outorThe socket connection was closed unexpectedlyError [ERR_MODULE_NOT_FOUND]: Cannot find module- Any sandboxing or host validation errors.
Step 3: Read Known Issues
Read the contents of https://github.com/ChromeDevTools/chrome-devtools-mcp/blob/main/docs/troubleshooting.md to map the error to a known issue. Pay close attention to:
- Sandboxing restrictions (macOS Seatbelt, Linux containers).
- WSL requirements.
--autoConnecthandshakes, timeouts, and requirements (requires running Chrome 144+).
Step 4: Formulate a Configuration
Based on the exact error and the user's environment (OS, MCP client), formulate the correct MCP configuration snippet. Check if they need to:
- Pass
--browser-url=http://127.0.0.1:9222instead of--autoConnect(e.g. if they are in a sandboxed environment like Claude Desktop). - Enable remote debugging in Chrome (
chrome://inspect/#remote-debugging) and accept the connection prompt. Ask the user to verify this is enabled if using--autoConnect. - Add
--logFile <absolute_path_to_log_file>to capture debug logs for analysis. - Increase
startup_timeout_ms(e.g. to 20000) if using Codex on Windows.
If you are unsure of the user's configuration, ask the user to provide their current MCP server JSON configuration.
Step 5: Run Diagnostic Commands
If the issue is still unclear, run diagnostic commands to test the server directly:
- Run
npx chrome-devtools-mcp@latest --helpto verify the installation and Node.js environment. - If you need more information, run
DEBUG=* npx chrome-devtools-mcp@latest --logFile=/tmp/cdm-test.logto capture verbose logs. Analyze the output for errors.
Step 6: Check GitHub for Existing Issues
If https://github.com/ChromeDevTools/chrome-devtools-mcp/blob/main/docs/troubleshooting.md does not cover the specific error, check if the gh (GitHub CLI) tool is available in the environment. If so, search the GitHub repository for similar issues:
gh issue list --repo ChromeDevTools/chrome-devtools-mcp --search "<error snippet>" --state all
Alternatively, you can recommend that the user checks https://github.com/ChromeDevTools/chrome-devtools-mcp/issues and https://github.com/ChromeDevTools/chrome-devtools-mcp/discussions for help.
Related skills
More from chromedevtools/chrome-devtools-mcp and the wider catalog.

a11y-debugging
Debug and audit web accessibility using Chrome DevTools with semantic HTML, ARIA, focus, and contrast checks.

chrome-devtools
Debug, automate, and inspect web pages using Chrome DevTools via MCP.

chrome-devtools-cli
Automate browser tasks and inspect Chrome DevTools from the command line.

debug-optimize-lcp
Debug and optimize Largest Contentful Paint (LCP) performance using Chrome DevTools MCP.

ego-browser
Chromium browser for AI agents to automate websites, fill forms, extract data, and test web apps.

clickup
Interact with ClickUp tasks and documents via API—get details, manage tasks, post comments, and create/edit docs.