Cursor + Chrome DevTools MCP:控制已打开的 Chrome,而不是另起一个
用 Cursor 接上 Chrome DevTools MCP 之后,很多人会遇到同一件事:
我明明已经开着 Chrome,登录态、标签页都在;
一让 AI「打开网页 / 截图 / 看控制台」,它却自己又拉起一个全新的 Chrome。
那不是坏了,而是默认行为:MCP 会启动一个独立浏览器实例(独立用户数据目录)。对自动化很干净,对「边手测边让 AI 帮忙」却很别扭。
本文讲怎么让 Cursor 接管你已经打开的那个 Chrome。
先分清:这不是 Chrome 扩展
chrome-devtools-mcp 是一个 MCP 服务器,作用是把 Chrome DevTools 能力暴露给 AI(打开页面、点击、截图、看网络、做性能分析等)。
它不会生成 Chrome 扩展,也不是浏览器插件。你要配的是 Cursor 的 MCP,不是去装扩展。
两种连「已打开 Chrome」的方式
| 方式 | 适合谁 | 体验 |
|---|---|---|
--autoConnect(推荐) |
Chrome ≥ 144 | 继续用日常 Chrome,点桌面图标即可 |
--browser-url + 调试端口 |
旧版本 / 需要固定端口 | 用专用快捷方式启动「受控 Chrome」 |
推荐做法:--autoConnect
1. 在 Chrome 里开启远程调试(通常只需一次)
- 打开你平时用的 Chrome
- 地址栏进入:
chrome://inspect/#remote-debugging - 按页面提示开启远程调试,并允许调试连接
可在 chrome://version 确认版本;低于 144 请用文末备选方案。
2. 改 Cursor 的 MCP 配置
打开 Cursor:Settings → MCP ,编辑 chrome-devtools;或直接改全局配置文件:
- Windows:
C:\Users\<你的用户名>\.cursor\mcp.json - macOS / Linux:
~/.cursor/mcp.json
写成:
json
{
"mcpServers": {
"chrome-devtools": {
"command": "npx",
"args": ["-y", "chrome-devtools-mcp@latest", "--autoConnect"]
}
}
}
保存后,在 MCP 面板重启该服务器,或重启 Cursor。
3. 正确使用顺序
- 先打开你日常的 Chrome(随便开几个标签页也行)
- 再在 Cursor 里让 AI 操作浏览器
- 首次连接时,Chrome 可能弹出「是否允许调试」→ 点 Allow
试一句:
列出当前打开的页面,并对当前页截图。
如果列出来的是你正在看的那些标签,而不是空白新窗口,就说明连对了。
4. 这种方式的好处
- 书签、登录态、扩展、已开标签都可以复用
- 适合「我先点到出问题的页面,再让 AI 查控制台 / 网络 / 性能」
- 不用每次等 AI 再开一个浏览器
注意:若开了多个 Chrome 用户配置,MCP 通常会连到 Chrome 判定的默认配置,并可以访问该配置下已打开的窗口。
备选:桌面快捷方式 + --browser-url
适合 Chrome 版本不够,或你明确想要「一个专门给 AI 用的受控浏览器」。
1. MCP 配置
json
{
"mcpServers": {
"chrome-devtools": {
"command": "npx",
"args": [
"-y",
"chrome-devtools-mcp@latest",
"--browser-url=http://127.0.0.1:9222"
]
}
}
}
2. Windows 桌面快捷方式
新建快捷方式,目标填:
text
"C:\Program Files\Google\Chrome\Application\chrome.exe" --remote-debugging-port=9222 --user-data-dir="%TEMP%\chrome-profile-stable"
macOS / Linux 同理,给 Chrome 加上:
bash
--remote-debugging-port=9222 --user-data-dir=/tmp/chrome-profile-stable
3. 使用注意
- 先关掉所有已运行的 Chrome,再用这个快捷方式启动
- 必须使用非默认 的
--user-data-dir(Chrome 安全要求),所以这通常是一套独立配置,不是你平时的书签/账号 - 调试端口打开后,本机其他程序也可能连上这个浏览器------别用它登敏感账号、办网银
常见踩坑
1. 还是弹出了新的 Chrome
多半还在用默认配置(没有 --autoConnect / --browser-url)。检查 mcp.json 是否生效,并重启 MCP。
2. 连不上,报连接失败
autoConnect:Chrome 是否已开?远程调试是否已开?有没有点 Allow?browser-url:9222 端口那个 Chrome 是否已启动?是否和配置端口一致?
3. 「我日常的 Chrome 不受控」
对。默认 MCP 开的是另一套 profile。要共用日常窗口,用 --autoConnect;要固定端口,用带调试参数的快捷方式。
4. 安全
远程调试等于把浏览器控制权暴露给本机可连接方。调试时尽量别开敏感站点;用完可关掉远程调试或关掉该 Chrome 进程。
最小验证清单
- Node.js 与本机 Chrome 已安装
- Cursor MCP 里能看到
chrome-devtools且状态正常 - 已选
--autoConnect,或已用 9222 快捷方式启动 Chrome - 先开浏览器,再让 AI 执行
list_pages/ 截图 - 确认操作的是你当前那个窗口,而不是新开空白实例
小结
Cursor 的 Chrome DevTools MCP 默认会自己开浏览器;若你希望「桌面上那个 Chrome 就是受控对象」:
- 优先:Chrome ≥ 144 +
chrome://inspect/#remote-debugging+ MCP 增加--autoConnect - 备选:专用快捷方式开启
--remote-debugging-port=9222,MCP 使用--browser-url=http://127.0.0.1:9222
一句话记住:
先开你的 Chrome,再让 MCP 连上去;不要默认等 AI 替你新开一个。
官方说明可参考:ChromeDevTools/chrome-devtools-mcp 中的 Connecting to a running Chrome instance。