Browser Use
Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.
作者提供的说明(英文原文)
Safe-by-default MCP that drives an Electron/Chrome app over CDP: DOM, console, network, input.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
CDP_PORT, CDP_HOST, CDP_MODE, CDP_ALLOW_EVAL, CDP_TARGET_ALLOWLIST, CDP_DRY_RUN你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"cdp": {
"command": "npx",
"args": [
"-y",
"@dockndevai/mcp-cdp"
],
"env": {
"CDP_PORT": "your-value",
"CDP_HOST": "your-value",
"CDP_MODE": "your-value",
"CDP_ALLOW_EVAL": "your-value",
"CDP_TARGET_ALLOWLIST": "your-value",
"CDP_DRY_RUN": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add cdp --env CDP_PORT=your-value --env CDP_HOST=your-value --env CDP_MODE=your-value --env CDP_ALLOW_EVAL=your-value --env CDP_TARGET_ALLOWLIST=your-value --env CDP_DRY_RUN=your-value -- npx -y @dockndevai/mcp-cdp运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"cdp": {
"command": "npx",
"args": [
"-y",
"@dockndevai/mcp-cdp"
],
"env": {
"CDP_PORT": "your-value",
"CDP_HOST": "your-value",
"CDP_MODE": "your-value",
"CDP_ALLOW_EVAL": "your-value",
"CDP_TARGET_ALLOWLIST": "your-value",
"CDP_DRY_RUN": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"cdp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@dockndevai/mcp-cdp"
],
"env": {
"CDP_PORT": "your-value",
"CDP_HOST": "your-value",
"CDP_MODE": "your-value",
"CDP_ALLOW_EVAL": "your-value",
"CDP_TARGET_ALLOWLIST": "your-value",
"CDP_DRY_RUN": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
CDP_PORT envCDP_HOST envCDP_MODE envCDP_ALLOW_EVAL envCDP_TARGET_ALLOWLIST envCDP_DRY_RUN env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 dockndevai 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.2.3)于12天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:Browser Use, Chrome DevTools MCP, MCP Server Browser
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.
MCP server for Chrome DevTools
MCP server for browser use access
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
A safe-by-default Model Context Protocol server that drives an Electron or Chrome/Chromium app over the Chrome DevTools Protocol (CDP) — instead of pixel-level GUI automation. Point it at the app's --remote-debugging-port and an agent gets the DOM, console, network requests, real input (click / type / navigate), and — gated — JavaScript evaluation.
Why this beats computer-use for a desktop/web app:
Part of the dockndevai MCP server suite — one governance model across all of them.
Starts read-only (see Safe by default); higher-capability tools are only registered when you raise the mode.
| Tool | For | Needs mode |
|---|---|---|
list_targets | list pages / webviews / Electron windows (id, type, title, url) | read-only |
dom_snapshot | rendered HTML of the page or a selector's subtree | read-only |
query_dom | outer HTML of every element matching a CSS selector | read-only |
console_logs | recent console output + uncaught exceptions | read-only |
network_requests | recent requests (method, url, status, mime; headers never captured) | read-only |
screenshot | a PNG of the viewport | read-only |
click | click the first element matching a selector | read-write |
type_text | type into the page (focus a selector first) | read-write |
press_key | Enter / Tab / Escape / Backspace / Delete / Arrows | read-write |
navigate | navigate a target to a URL (confirmed) | read-write |
evaluate | run a JavaScript expression in the page | admin + CDP_ALLOW_EVAL |
npx -y @dockndevai/mcp-cdp
Start your app (or a worktree's dev build) with an explicit port — one per agent:
your-app --remote-debugging-port=9222, or in main-process code app.commandLine.appendSwitch('remote-debugging-port', '9222') before app.whenReady().chrome --headless=new --remote-debugging-port=9222 --user-data-dir=/tmp/p1 .Check it's up: curl http://127.0.0.1:9222/json/version.
{
"mcpServers": { "cdp": { "command": "npx", "args": ["-y", "@dockndevai/mcp-cdp"], "env": { "CDP_PORT": "9222", "CDP_MODE": "read-only" } } } }
See docs/CLIENTS.md for Claude Code / Cursor / Codex / VS Code / Windsurf, and .env.example for every variable.
Enforced by src/security.ts. The browser process is the real boundary — this keeps an agent inside the targets and actions you intend:
read-only (default) → read-write → admin. Tools above the mode aren't registered, so in read-only the agent cannot click, type or navigate at all.accounts.google.com, login.microsoftonline.com, …) and browser internals (chrome://, devtools://, extensions).evaluate is arbitrary code execution in the renderer: admin mode plus this flag, refused on protected targets, with a human confirmation.evaluate and navigate also prompt a human via MCP elicitation.127.0.0.1 unless CDP_ALLOW_REMOTE=true.Optional AI risk guard. Set CDP_GUARD_MODE=monitor|enforce to have the evaluate tool consult a local laya-guard daemon (pipx install laya-guard && laya-guard) that classifies the JS expression allow/confirm/block before it runs. It runs *after* the eval gate and can only tighten, never grant; fails closed.
There is a bundled skill, cdp-safe-operations, that teaches an agent how to expose a port, read the DOM/console/network instead of screenshots, the safety rules, and the "why did this fail?" workflow. See also SECURITY.md.
npm install
npm run build
echo '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' | CDP_PORT=9222 node dist/index.js npm test
MIT