invisible_playwright_mcp README

The project's README from github.com/feder-cr/invisible_playwright_mcp. As one markdown file: README.md.

dots

Every AI agent is a model and a browser.
You can swap the model with one flag. The browser is what the website sees.


Windows, in PowerShell:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
$env:Path = "$env:USERPROFILE\.local\bin;$env:Path"
uvx --from git+https://github.com/feder-cr/dots dots --openrouter-key sk-or-...

Linux:

curl -LsSf https://astral.sh/uv/install.sh | sh
source $HOME/.local/bin/env
uvx --from git+https://github.com/feder-cr/dots dots --openrouter-key sk-or-...

Then open http://127.0.0.1:8765. The conversation on the left, the browser on the right, live.

It all comes down to the browser

When a web agent fails, the model is rarely why. The page never loaded, a challenge appeared, the login expired, the click did not land. All of that happens in the browser, before the model gets to think.

So dots is built around one:

The model is any model on OpenRouter, and --model changes it.

What to ask it

Go to <paste the URL>. One way, Milan to Lisbon, economy, one adult. Check every date from the 12th to the 16th of next month and read the cheapest fare for each day. If a date has no availability, say so. Do not guess a number.

The same browser, in your own assistant

Claude Code, Codex, Gemini CLI or any MCP client: invisible_playwright_mcp gives them this browser as a server. dots is its interface, and dots --help lists every option.


Not affiliated with OpenAI. MIT licensed.

invisible_playwright_mcp (feder-cr/invisible_playwright_mcp)

Searching Database…

这是什么?这是 dots,一个 Playwright MCP 服务器,为 AI agent 提供一个打过补丁的真实 Firefox 浏览器,让它们浏览网页时不会被反机器人系统或验证码拦截。
这是一个隐身浏览器,还是 Playwright 的包装脚本?它不是表层的包装:dots 用 C++ 给真实的 Firefox 引擎打补丁,让浏览器本身表现得像真实用户,再把这个浏览器作为 MCP 服务器暴露给 AI agent。
怎么让它跑起来?在 Windows 上用 PowerShell 脚本、在 Linux 上用 shell 脚本安装,然后运行 dots 命令,打开一侧是 AI 对话、另一侧是实时浏览器的分屏视图。
它支持哪些编码 agent 或模型?dots 可以作为任何 MCP 客户端的 MCP 服务器,包括 Claude Code、Codex 和 Gemini CLI;底层模型可以是 OpenRouter 上的任何模型,通过 --model 标志切换。
它能保证我的 agent 永远不被拦住吗?不能——该项目的前提是大多数 agent 失败来自浏览器而非模型,所以页面加载失败、弹出人机验证、登录过期或点击落空仍可能发生;而且它是独立工具,与 OpenAI 没有隶属关系。
浏览器会在会话之间保留我的登录状态吗?会,--profile-dir 可以跨运行持久化 cookie 和登录状态,--seed 则保持相同的指纹(屏幕、字体、GPU、时区、语言),让浏览器每次看起来都像同一个人。
dots 实际上是怎么避开检测的?它直接给 Firefox 引擎打补丁,因此没有 WebDriver 标志、没有 DevTools 协议、也没有可供页面发现的自动化全局变量,而且它像真人一样移动鼠标和按键。
可以让浏览器走代理吗?可以,--proxy 标志会把浏览器的时区和语言改成与代理出口位置一致,使身份和连接位置保持一致。
「dots」到底是什么?dots 是这个隐身浏览器的命令行界面——运行它会打开聊天/浏览器分屏视图,dots --help 会列出所有可用选项。
它是为哪类任务设计的?README 里的示例是让 agent 在旅游网站上查询一段日期范围内的机票价格,可见它面向的是求职、数据抓取这类多步骤、有反机器人防护的浏览任务。
Creator
feder-cr
Size
20.9 MB
Stars
2.8K
Age
18d
Commits · 90 Days