name: browser-mcp description: 使用 Chrome DevTools MCP 協議遠端控制 Chrome 瀏覽器執行網頁任務。當用戶說"開啟網站"、"幫我搜索"、"點進去看看"、"檢視詳情"、"操作網頁"、"開啟 ChatGPT/Gemini"等任何需要瀏覽器自動化執行的任務時觸發。支援網站導航、元素互動、表單填寫、多步驟跳轉、資訊提取、SSRF 白名單配置等完整功能。
通過 Chrome DevTools MCP 協議連線瀏覽器,實現遠端網頁控制。
| 專案 | 值 |
|---|---|
| 作業系統 | Windows 11 Pro |
| 宿主軟體 | QClaw (OpenClaw) |
| 瀏覽器 | Chrome (老闆已登入的瀏覽器) |
| 連線方式 | Chrome DevTools MCP (profile=user) |
┌─────────────────────────────────────────────────────────┐
│ QClaw / OpenClaw (本機 Windows 11) │
│ │
│ browser(action="navigate", profile="user", ...) │
│ ↓ │
│ Chrome DevTools MCP (CDP) │
│ ↓ │
│ ws://127.0.0.1:9222 (Chrome Remote Debugging) │
│ ↓ │
│ Chrome Browser (老闆的 Chrome) ← 直接操控已登入狀態 │
└─────────────────────────────────────────────────────────┘
browser(action="start", profile="user")
browser(action="navigate", profile="user", url="https://example.com")
browser(action="snapshot", profile="user", refs="aria")
browser(action="act", profile="user", ref="ref_id", kind="click") // 點選
browser(action="act", profile="user", ref="ref_id", kind="type", text="內容") // 輸入
啟動瀏覽器 → 導航網址 → 獲取快照 → 分析內容 → 操作元素 → 等待載入 → 迴圈重複
1. browser(action="navigate", url="目標網址")
2. browser(action="snapshot", refs="aria") ← 每次操作前必做
3. 分析快照中的 ref,找到目標元素
4. browser(action="act", kind="click/type/press", ref="xxx", ...)
5. browser(action="act", kind="wait", timeMs=2000) // 等待載入
6. 返回步驟2,迴圈直到任務完成
| Action | 說明 | 示例 |
|---|---|---|
start |
啟動瀏覽器 | browser(action="start", profile="user") |
navigate |
開啟網址 | browser(action="navigate", profile="user", url="...") |
snapshot |
獲取頁面快照 | browser(action="snapshot", profile="user", refs="aria") |
screenshot |
截圖 | browser(action="screenshot", profile="user") |
status |
檢視瀏覽器狀態 | browser(action="status", profile="user") |
stop |
關閉瀏覽器 | browser(action="stop", profile="user") |
| Kind | 說明 | 引數 |
|---|---|---|
click |
點選元素 | ref="xxx" |
type |
輸入文本 | ref="xxx", text="內容" |
press |
按鍵 | key="Enter"/"Escape"/"ArrowDown"/"ArrowUp" |
select |
下拉選擇 | ref="xxx", values=["選項"] |
hover |
懸停 | ref="xxx" |
wait |
等待載入 | timeMs=2000 |
scroll |
滾動 | width=0, height=500 |
close |
關閉標籤頁 | - |
| 操作 | 程式碼 |
|---|---|
| 貼上文本 | browser(action="act", kind="press", key="Control+v") |
| 全選 | browser(action="act", kind="press", key="Control+a") |
| 後退 | browser(action="act", kind="press", key="Alt+ArrowLeft") |
| Ctrl+點選新標籤開啟 | browser(action="act", ref="xxx", kind="click", modifiers=["Control"]) |
| 場景 | 方式 |
|---|---|
| 搜尋框輸入 | browser(action="act", ref="搜尋框ref", kind="type", text="關鍵詞") |
| 點選搜尋/提交按鈕 | browser(action="act", ref="按鈕ref", kind="click") |
| 回車提交 | browser(action="act", kind="press", key="Enter") |
| ESC返回/關閉彈窗 | browser(action="act", kind="press", key="Escape") |
| 滾動瀏覽 | browser(action="act", kind="scroll", height=800) |
| 等待載入 | browser(action="act", kind="wait", timeMs=3000) |
1. navigate → 開啟搜尋引擎(百度/Google)
2. snapshot → 找到搜尋框 ref
3. type → 輸入搜尋關鍵詞
4. press Enter → 提交搜尋
5. wait 2s → 等待結果載入
6. snapshot → 檢視搜尋結果
7. click → 點選目標連結
1. navigate → 開啟目標網站(已登入狀態)
2. snapshot → 確認已登入
3. 執行後續操作...
1. navigate → 開啟列表頁
2. snapshot → 找到目標條目
3. click → 點進詳情
4. wait → 等待載入
5. snapshot → 檢視詳情內容
6. 重複深入或返回繼續
1. navigate → 開啟表單頁
2. snapshot → 獲取所有表單項 ref
3. type → 逐項填寫(姓名、郵箱等)
4. select → 選擇下拉選項
5. click → 提交按鈕
6. wait → 等待響應
7. snapshot → 確認提交結果
C:\Users\<your-username>\.qclaw\openclaw.json
"browser": {
"ssrfPolicy": {
"dangerouslyAllowPrivateNetwork": false,
"allowedHostnames": [ ... ]
},
"profiles": {
"user": {
"driver": "existing-session",
"attachOnly": true,
"cdpPort": 9222,
"cdpUrl": "http://127.0.0.1:9222", // 本地除錯埠,不要暴露
"color": "#00AA00"
}
}
}
老闆的 Chrome 需要開啟遠端除錯:
1. 位址列輸入 chrome://inspect/#remote-debugging
2. 勾選 "Discover network targets"
3. 確認顯示 localhost:9222
如果需要手動啟動帶除錯埠的 Chrome:
start chrome.exe --remote-debugging-port=9222
當 Agent 執行在 Linux 或 Mac 系統時,需要遠端連線到 Windows 11 老闆電腦上的 Chrome 瀏覽器。
┌──────────────────────────────┐ ┌──────────────────────────────┐ │ Linux / Mac (Agent) │ │ Windows 11 (老闆電腦) │ │ │ │ │ │ QClaw / OpenClaw │ ←──→ │ Chrome + 遠端除錯埠 │ │ browser(action=..., │ CDP │ chrome.exe --remote- │ │ cdpUrl="ws://WIN_IP:9222")│ │ debugging-port=9222 │ └──────────────────────────────┘ └──────────────────────────────┘想要更強大的技能外掛,就來小蔥技能站7w4.net看看吧。
允許 Chrome 接受外部連線:
powershell
chrome.exe --remote-debugging-port=9222 --remote-allow-origins=*
防火牆配置(允許 9222 埠入站)
獲取 Windows 電腦的區域網 IP(如 192.168.1.100)
"browser": {
"profiles": {
"user": {
"driver": "remote",
"cdpUrl": "ws://<your-windows-ip>:9222", // 替換為實際 IP
"attachOnly": false,
"color": "#00AA00"
}
}
}
Blocked: resolves to private/internal/special-use IP address
C:\Users\<your-username>\.qclaw\openclaw.jsonbrowser.ssrfPolicy.allowedHostnames*.example.com)gateway(action=restart)"allowedHostnames": [
"*.chatgpt.com", "*.openai.com", "*.oaistatic.com",
"*.gemini.google.com", "*.google.com",
"*.twitter.com", "*.x.com",
"*.facebook.com", "*.fbcdn.net",
"*.github.com", "*.githubusercontent.com", "*.githubassets.com",
"*.npmjs.org", "*.pypi.org", "*.pythonhosted.org",
"*.cloudflare.com", "*.workers.dev", "*.vercel.app",
"*.googleapis.com", "*.gstatic.com",
"*.stackoverflow.com", "*.stackexchange.com"
]
profile=user:連線老闆的 Chrome,不是預設 profile| 問題 | 解決方法 |
|---|---|
| 報錯 "Blocked SSRF" | 新增域名到白名單,重啟 OpenClaw |
| 點選沒反應 | 重新 snapshot,ref 可能已變化 |
| 頁面載入慢 | 增加 wait timeMs 值 |
| 瀏覽器超時 | 重啟 OpenClaw 閘道器 |
| 輸入內容丟失 | 使用 fill 替代 type,或先清空再輸入 |
老闆的 Chrome 需開啟遠端除錯才能連線: 1. 位址列輸入
chrome://inspect/#remote-debugging2. 勾選 "Discover network targets" 3. 確認顯示localhost:9222
最後更新:2026-03-25
這個 Skill 整體質量不錯,文件寫得清楚明白,小白也能看懂怎麼用。優點是功能覆蓋全面,搜尋、操作網頁、表單填寫這些常用場景都有對應的操作指南,還貼心地提供了 SSRF 白名單配置說明。不足的是部分高階功能還不完善,另外文件有點囉嗦,有些內容重複。總體而言是個好用的瀏覽器自動化工具。