一、概述

Chrome DevTools MCP 是一个将 Chrome 浏览器的 DevTools 协议暴露为 MCP 工具的服务器,配合 Kiro 编辑器可以实现在对话中直接操控浏览器,无需手动切换窗口。

核心价值:让 AI 助手拥有"眼睛"和"手",能看到页面、操作页面、分析问题。


二、能力矩阵

2.1 页面导航与管理

能力说明典型场景
打开页面navigate_page 导航到指定 URL打开测试环境验证部署
多页面管理new_page / list_pages / select_page / close_page同时对比多个环境
前进/后退/刷新navigate_page 支持 back/forward/reload测试浏览器历史导航

示例指令

"打开 http://localhost:8080 检查页面是否正常"
"同时打开生产和测试环境,对比页面差异"

2.2 控制台监控与调试

能力说明典型场景
查看控制台日志list_console_messages 按类型过滤检查 error/warn 日志
查看日志详情get_console_message 获取完整堆栈定位 JS 报错根因
执行 JS 脚本evaluate_script 在页面上下文执行检查变量状态、调用 API

示例指令

"打开首页,检查控制台是否有错误日志"
"在控制台执行 localStorage.getItem('token') 看下登录状态"
"检查 Vue 组件的 data 状态"

2.3 网络请求分析

能力说明典型场景
列出所有请求list_network_requests 按资源类型过滤找出失败的 API 请求
查看请求详情get_network_request 含请求/响应体分析接口返回数据
导出请求数据保存请求/响应体到文件留存接口调试证据
网络限速emulate 模拟 3G/4G/离线测试弱网环境表现

示例指令

"监控页面网络请求,找出加载最慢的资源"
"检查 /api/user/info 接口的返回数据"
"模拟 Slow 3G 网络,看页面加载体验"

2.4 页面截图与快照

能力说明典型场景
页面截图take_screenshot 支持全页/元素级记录 UI 状态、对比布局
页面快照take_snapshot 基于 a11y 树的文本快照AI 理解页面结构和内容
保存到文件截图/快照可保存到本地生成测试报告附件

示例指令

"截图当前页面并分析布局问题"
"截图登录表单区域"
"全页截图保存到 docs/screenshots/ 目录"

2.5 页面交互操作

能力说明典型场景
点击元素click / dblClick点击按钮、链接、菜单
填写表单fill / fill_form输入文本、选择下拉框
键盘操作press_key 支持组合键Enter 提交、快捷键操作
悬停hover触发 tooltip、下拉菜单
拖拽drag拖拽排序、拖拽上传
文件上传upload_file上传测试文件
弹窗处理handle_dialog处理 alert/confirm/prompt
等待元素wait_for等待异步内容加载完成

示例指令

"执行登录流程:输入用户名 admin,密码 123456,点击登录"
"填写注册表单并提交,验证跳转是否正确"
"点击删除按钮,确认弹窗后验证数据是否移除"

2.6 设备模拟与响应式测试

能力说明典型场景
视口调整emulate 设置宽高/DPR测试响应式布局
移动端模拟设置 isMobile/hasTouch模拟手机浏览
深色模式emulate colorScheme测试暗色主题
地理位置emulate geolocation测试定位功能
UA 伪装emulate userAgent模拟不同浏览器
CPU 限速emulate cpuThrottlingRate模拟低端设备
页面缩放resize_page测试不同分辨率

示例指令

"模拟 iPhone 14 Pro 的视口,截图看移动端布局"
"切换到深色模式,检查样式是否正常"
"模拟 CPU 4x 降速,测试页面交互流畅度"

2.7 性能分析

能力说明典型场景
录制性能 Traceperformance_start_trace / performance_stop_trace分析页面加载性能
性能洞察performance_analyze_insight查看 LCP/CLS/FID 等 Core Web Vitals
导出 Trace保存为 .json.gz 文件在 Chrome DevTools 中深入分析

示例指令

"录制首页加载性能,分析 Core Web Vitals 得分"
"找出导致页面卡顿的性能瓶颈"
"导出性能 Trace 到 docs/performance/ 目录"

三、实战场景

3.1 前端 Bug 排查流程

1. "打开出问题的页面"
2. "检查控制台错误日志"
3. "查看失败的网络请求详情"
4. "截图当前页面状态"
5. → 根据信息定位代码问题并修复

3.2 接口联调验证

1. "打开页面,触发某个操作"
2. "查看 /api/xxx 接口的请求参数和返回数据"
3. → 对比预期,发现前后端数据不一致的问题

3.3 自动化回归测试

1. "打开登录页"
2. "输入用户名密码,点击登录"
3. "等待跳转到首页"
4. "验证页面显示了用户名"
5. "截图保存测试证据"

3.4 响应式布局验证

1. "打开页面"
2. "分别模拟 1920x1080、1366x768、375x812 三个分辨率"
3. "每个分辨率截图保存"
4. → 对比不同分辨率下的布局差异

3.5 性能优化分析

1. "录制页面加载性能 Trace"
2. "分析 LCP、CLS 等指标"
3. "找出加载最慢的资源"
4. → 针对性优化

四、配置参考

4.1 Kiro MCP 配置(.kiro/settings/mcp.json

{
  "mcpServers": {
    "chrome-devtools": {
      "command": "npx",
      "args": [
        "-y",
        "chrome-devtools-mcp@latest",
        "--autoConnect",
        "--channel=stable"
      ],
      "autoApprove": [],
      "disabled": false
    }
  }
}

4.2 注意事项

  • Node.js 版本要求 ≥ 20.19.0 LTS
  • 如果使用 nvm 管理 Node,需要在 command 中指定高版本 npx 的绝对路径,并通过 env.PATH 确保子进程也使用正确版本
  • --channel 参数:stable(普通 Chrome)、beta(Chrome Beta)、canary(Chrome Canary)
  • --autoConnect 会自动连接已运行的 Chrome,如果 Chrome 未启动会自动以调试模式启动
  • 首次连接时需要关闭所有已打开的 Chrome 窗口,让 MCP 以远程调试模式重新启动

五、与纯手动调试的对比

维度手动调试Kiro + Chrome DevTools MCP
窗口切换频繁在编辑器和浏览器间切换在对话中直接操作,无需切窗口
信息传递手动复制粘贴错误信息AI 直接读取控制台和网络数据
重复操作每次手动点击填写一句话描述,AI 自动执行
多设备测试手动调整视口或用真机一句话切换模拟设备
问题分析自己看日志分析AI 读取数据后直接给出分析和修复建议
测试记录手动截图保存自动截图并保存到项目目录

在这里插入图片描述

Logo

欢迎加入 MCP 技术社区!与志同道合者携手前行,一同解锁 MCP 技术的无限可能!

更多推荐