【技术文档摘要】
⚠️ 维护中 - 此项目仍在积极开发中。某些功能可能不完整或未经通知更改。
提供强大的、能够抵抗检测的浏览器自动化能力,基于 ZFC 数字公司的 puppeteer-real-browser 包,供 AI 助手使用。
这是一个 MCP(模型上下文协议)服务器,让像 Claude 这样的 AI 助手控制一个真实的网络浏览器。可以将其视为给 Claude “手”,使其能够与网站互动——它可以点击按钮、填写表单、提取内容等等,同时避免被机器人检测到。
如果您只是使用这个 MCP 服务器(而不是开发它),您不需要运行 npm install。配置中的 npx 命令会自动下载并运行最新版本。安装仅在开发目的时需要。
node --version对于 Windows:
%APPDATA%\Claude\claude_desktop_config.json{
"mcpServers": {
"puppeteer-real-browser": {
"command": "npx",
"args": ["puppeteer-real-browser-mcp-server@latest"]
}
}
}
对于 Mac:
Cmd+Shift+G~/Library/Application Support/Claude/claude_desktop_config.json对于 Linux:
~/.config/Claude/claude_desktop_config.json为什么使用 @latest? @latest 标签确保您始终获得最新的版本,包括错误修复和改进。npx 命令会自动下载并运行它,而无需永久安装在您的系统上。
完全关闭并重新打开 Claude Desktop。
在 Claude Desktop 中,尝试说:
"初始化浏览器并导航到 google.com,然后获取页面内容"
如果一切正常,Claude 应该能够:
一旦设置好,您可以要求 Claude:
headless: true)如果您不想看到浏览器窗口Puppeteer 实时浏览器 MCP 服务器充当 AI 助手和浏览器自动化之间的桥梁。它利用 puppeteer-real-browser 提供能够绕过常见机器人检测机制的隐身浏览功能。
此服务器实现了模型上下文协议(MCP),允许 AI 助手控制真实浏览器、提取内容等。
Windows:
C:\Program Files\Google\Chrome\Application\chrome.exeC:\Program Files (x86)\Google\Chrome\Application\chrome.exe%LOCALAPPDATA%\Google\Chrome\Application\chrome.exe%LOCALAPPDATA%\Google\Chrome SxS\Application\chrome.exeCHROME_PATH 环境变量macOS:
/Applications/Linux:
sudo apt-get install -y google-chrome-stable 或 sudo apt-get install -y chromium-browsersudo apt-get install -y xvfb注意:Claude Desktop 用户无需安装任何东西!配置中的 npx 命令会自动处理一切。跳转至 使用方法 部分。
本节适用于希望:
如果您想直接从命令行运行服务器而不使用 npx:
npm install -g puppeteer-real-browser-mcp-server@latest
全局安装后,您可以运行:
puppeteer-real-browser-mcp-server
# 克隆仓库
git clone https://github.com/withLinda/puppeteer-real-browser-mcp-server.git
cd puppeteer-real-browser-mcp-server
# 安装依赖
npm install
# 构建项目
npm run build
# 开发模式运行
npm run dev
以下配置使用 npx 自动下载并运行最新版本。无需安装!
{
"mcpServers": {
"puppeteer-real-browser": {
"command": "npx",
"args": ["puppeteer-real-browser-mcp-server@latest"]
}
}
}
npx 做了什么?
npx命令下载并运行包,而不会永久安装它。@latest确保您始终获得带有所有错误修复和改进的新版本。
Claude Code CLI 提供多种便捷方法添加 puppeteer-real-browser MCP 服务器。选择最适合您工作流程的方法:
最快开始的方式是使用 claude mcp add 命令:
claude mcp add puppeteer-real-browser -- npx puppeteer-real-browser-mcp-server@latest
此命令:
如果您需要配置代理设置或自定义 Chrome 路径:
claude mcp add puppeteer-real-browser \
-e CHROME_PATH="/path/to/chrome" \
-e PROXY_URL="http://proxy:8080" \
-- npx puppeteer-real-browser-mcp-server@latest
对于跨所有项目的用户范围(可用):
claude mcp add puppeteer-real-browser -s user -- npx puppeteer-real-browser-mcp-server@latest
对于整个项目的范围(通过 .mcp.json 与团队共享):
claude mcp add puppeteer-real-browser -s project -- npx puppeteer-real-browser-mcp-server@latest
对于需要精确控制的高级用户:
claude mcp add-json puppeteer-real-browser '{
"type": "stdio",
"command": "npx",
"args": ["puppeteer-real-browser-mcp-server@latest"],
"env": {
"CHROME_PATH": "/path/to/chrome",
"PROXY_URL": "http://proxy:8080"
}
}'
添加服务器后:
检查 MCP 服务器状态:
/mcp
在 Claude Code 中使用此命令查看所有活动的 MCP 服务器。
测试服务器: 在 Claude Code 中尝试:
"初始化浏览器并导航到 google.com,然后获取页面内容"
如果正确工作,您应该看到:
| 范围 | 描述 | 配置位置 | 使用场景 |
|---|---|---|---|
| local(默认) | 仅在当前项目中对您可用 | 项目中的 .mcp.json | 测试、项目特定 |
| project | 整个团队共享 | 提交到仓库的 .mcp.json | 团队协作 |
| user | 跨所有项目对您可用 | 用户配置目录 | 个人生产力 |
@latest 确保您获得错误修复和改进/mcp 命令用于服务器健康检查Cursor IDE 也使用相同的 npx 方法——无需安装!以下是设置方法:
Ctrl+Shift+P,Mac 上为 Cmd+Shift+P)配置文件位置:
.cursor/mcp.json~/.cursor/mcp.json基本配置(无需安装):
{
"mcpServers": {
"puppeteer-real-browser": {
"command": "npx",
"args": ["puppeteer-real-browser-mcp-server@latest"]
}
}
}
重要:就像 Claude Desktop 一样,Cursor 将使用
npx自动下载并运行服务器。您不需要使用 npm 安装任何东西!
Windows 特定配置(如果遇到 Chrome 路径问题):
{
"mcpServers": {
"puppeteer-real-browser": {
"command": "npx",
"args": ["puppeteer-real-browser-mcp-server@latest"],
"env": {
"CHROME_PATH": "C:/Program Files/Google/Chrome/Application/chrome.exe"
}
}
}
}
注意:浏览器选项如无头模式应在通过
browser_init工具初始化浏览器时配置,而不是通过环境变量。
具有自定义 Chrome 路径的高级配置:
{
"mcpServers": {
"puppeteer-real-browser": {
"command": "npx",
"args": ["puppeteer-real-browser-mcp-server@latest"],
"env": {
"CHROME_PATH": "C:/Program Files/Google/Chrome/Application/chrome.exe"
}
}
}
}
注意:代理设置和浏览器选项应在请求 Claude 初始化浏览器时通过
browser_init工具配置。
如果 Chrome 自动检测失败,您可以使用 CHROME_PATH 环境变量指定 Chrome 路径:
Windows:
"env": {
"CHROME_PATH": "C:/Program Files/Google/Chrome/Application/chrome.exe"
}
Windows 的其他路径:
"C:/Program Files (x86)/Google/Chrome/Application/chrome.exe""%LOCALAPPDATA%/Google/Chrome/Application/chrome.exe"macOS:
"env": {
"CHROME_PATH": "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"
}
Linux:
"env": {
1. "CHROME_PATH": "/usr/bin/google-chrome"
}
Linux 的其他路径:/usr/bin/chromium-browser,/snap/bin/chromium
配置后:
如果成功,您应该看到:
常见问题:
“未找到 MCP 服务器”
“浏览器无法启动”(Windows)
executablePath 中添加明确的 Chrome 路径“权限被拒绝”
sudo npm install -g puppeteer-real-browser-mcp-server配置未加载
mcp.json(而非 mcp.json.txt)启动服务器:
puppeteer-real-browser-mcp-server
或者如果是从源码安装:
npm start
服务器通过 stdin/stdout 使用 MCP 协议通信。
用户:"初始化浏览器并导航到 example.com"
AI:"我将初始化一个隐身浏览器并导航到该网站。"
[使用 browser_init 和 navigate 工具]
用户:"用 'test query' 填写搜索表单"
AI:"我将在搜索字段中输入这些内容。"
[使用 type 工具,带选择器和文本]
用户:"点击搜索按钮"
AI:"我将点击搜索按钮。"
[使用 click 工具]
用户:"从这个电子商务页面获取所有产品名称"
AI:"我将从页面中提取产品信息。"
[使用 get_content 工具,带适当的选择器]
用户:"将页面内容保存为文本"
AI:"我将获取整个页面的文本内容。"
[使用 get_content 工具,类型为 'text']
用户:"将此页面内容保存为 Markdown 文件"
AI:"我将提取页面内容并保存为格式化的 Markdown 文件。"
[使用 save_content_as_markdown 工具,指定文件路径]
用户:"使用代理服务器初始化浏览器"
AI:"我将根据您的