Uses Chrome DevTools via MCP for efficient debugging, troubleshooting and browser automation...
Browser lifecycle: Browser starts automatically on first tool call using a persistent Chrome profile. Configure via CLI args in the MCP server configuration: npx chrome-devtools-mcp@latest --help.
Addional tooling can be enabled by providing the following flags:
--categoryExtensions flag.--memoryDebugging flag.Page targeting: Page-scoped tools require a pageId parameter to target a specific page. Use list_pages to see available pages and their IDs (e.g. pageId: 1), or use the ID returned when creating a page with new_page.
Note: For evaluate_script, pageId is required when targeting pages. However, when --categoryExtensions is enabled, pageId is optional so you can pass serviceWorkerId instead to evaluate inside an extension background service worker.
Element interaction: Use take_snapshot to get page structure with element uids. Each element has a unique uid for interaction. If an element isn't found, take a fresh snapshot - the element may have been removed or the page changed.
navigate_page or new_pagewait_for to ensure content is loaded if you know what you look for.take_snapshot with pageId to understand page structureuids from snapshot for click, fill, etc., passing the corresponding pageId.filePath parameter for large outputs (screenshots, snapshots, traces)pageIdx, pageSize) and filtering (types) to minimize dataincludeSnapshot: false on input actions unless you need updated page statetake_snapshot (text-based, faster, better for automation)take_screenshot (when user needs to see visual state)evaluate_script for data not in accessibility treeYou can send multiple tool calls in parallel, but maintain correct order: navigate → wait → snapshot → interact.
Before proceeding: Extension tools (
install_extension,list_extensions, etc.) are only available when the MCP server is started with the--categoryExtensionsflag. If these tools are not in your tool list, stop and ask the user to update their MCP server configuration:{ "mcpServers": { "chrome-devtools": { "command": "npx", "args": ["chrome-devtools-mcp@latest", "--categoryExtensions"] } } }After updating, the user must restart the MCP server (or their AI client) for the change to take effect.
install_extension with the path to the unpacked extension.list_extensions.trigger_extension_action to open the popup or side panel if applicable.evaluate_script with serviceWorkerId (omitting pageId and args) to check extension state or trigger background actions. When evaluating in a page, pass pageId (omitting serviceWorkerId).take_snapshot to check if content scripts injected elements or modified the page correctly.If chrome-devtools-mcp is insufficient, guide users to use Chrome DevTools UI:
If there are errors launching chrome-devtools-mcp or Chrome, refer to https://github.com/ChromeDevTools/chrome-devtools-mcp/blob/main/docs/troubleshooting.md.