Uses Chrome DevTools via MCP for efficient debugging, troubleshooting and browser automation. Use when debugging web pages, automating browser interactions, ana
复制下面这句话,粘贴给 Claude Code、Codex、Cursor 等 AI 编程工具,它会读取安装说明并在你确认后完成安装。
请阅读 https://ai.atlankj.com/install/asset/gh-chrome-devtools-f1cb92f42a8a ,按照其中的说明把「chrome-devtools」安装到你(当前 AI 工具)中。执行前先告诉我将运行的命令和写入的位置,等我确认。
查看 AI 将读取的安装说明正在读取 GitHub 原文…
内容来自 GitHub 原始文件,由原作者维护。在 GitHub 查看
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)get_css_styles to inspect matched rules, cascade, and CSS variables. Treat the output as authoritative and complete.evaluate_script for runtime DOM/JS data not available via get_css_styles or take_snapshot.You 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.