通过MCP使用Chrome DevTools进行高效的调试、故障排除和浏览器自动化。适用于调试网页、自动化浏览器交互等场景。
核心概念 : Browser 生命周期 : 浏览器使用持久 Chrome 配置文件在第一次工具调用时自动启动.是一项面向实际任务的技能,主要用于Controphication 透過 CLI args 在 MCP 服务器配置中: npx chrome-devtools。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;
涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
浏览器生命周期:浏览器在首次调用工具时自动启动,使用持久化的 Chrome 用户资料(profile)。可通过 MCP 服务器配置中的 CLI 参数进行配置:npx chrome-devtools-mcp@latest --help。
页面选择:所有工具均作用于当前选中的页面。使用 list_pages 查看可用页面,再通过 select_page 切换上下文。
元素交互:调用 take_snapshot 获取包含元素 uid 的页面结构。每个元素具有唯一 uid,用于后续交互。若未找到目标元素,请重新执行 take_snapshot —— 元素可能已被移除,或页面内容已发生变化。
navigate_page 或 new_pagewait_for 确保所需内容已加载完成(适用于已知目标内容的情形)take_snapshot 以理解当前页面结构uid 执行 click、fill 等操作filePath 参数pageIdx、pageSize)和过滤参数(types)减少返回数据量includeSnapshot: falsetake_snapshot(基于文本、速度更快、更适合自动化)take_screenshot(当用户需查看页面视觉状态时)evaluate_script 提取无障碍树(accessibility tree)中不可见的数据可并行发送多个工具调用,但须确保逻辑顺序正确:导航 → 等待 → 快照 → 交互。
若 chrome-devtools-mcp 功能不足,请引导用户使用 Chrome DevTools UI:
若 chrome-devtools-mcp 或 Chrome 启动失败,请参考:
https://github.com/ChromeDevTools/chrome-devtools-mcp/blob/main/docs/troubleshooting.md