article
README
🚀 浏览器自动化 MCP 服务器
本服务器基于模型上下文协议(MCP),可为 Claude 及其他与 MCP 兼容的 AI 助手提供浏览器自动化功能。
🚀 快速开始
本服务器基于模型上下文协议(MCP),可为 Claude 及其他与 MCP 兼容的 AI 助手提供浏览器自动化功能。你可以按照以下步骤启动并使用该服务器。
✨ 主要特性
- 网页自动化:能够程序化地控制网络浏览器,实现自动化操作。
- 截图捕获:可对网页页面进行截图。
- 元素交互:支持点击、输入等与网页元素的交互操作。
- 导航:能在页面之间进行导航,并管理浏览器状态。
- 表单填写:可自动填写并提交表单。
- 数据提取:从网页中提取所需数据。
📦 安装指南
# 克隆仓库
git clone https://github.com/samihalawa/browser-automation-server.git
cd browser-automation-server
# 安装依赖项
npm install
# 构建服务器
npm run build
💻 使用示例
基础用法
启动服务器
npm start
配置
将服务器添加到您的 MCP 配置中:
{
"servers": {
"browser-automation": {
"command": "/path/to/node",
"args": ["/path/to/browser-automation-server/build/index.js"],
"enabled": true,
"port": 3008,
"environment": {
"NODE_PATH": "/path/to/node_modules",
"PATH": "/usr/local/bin:/usr/bin:/bin"
}
}
}
}
高级用法
可用工具
navigate
导航到指定的 URL。 参数:
url(string, 必填):要导航到的 URLwaitUntil(string, 可选):导航等待条件。选项:'load', 'domcontentloaded', 'networkidle'。默认值:'load'
screenshot
拍摄当前页面的截图。 参数:
fullPage(boolean, 可选):是否捕获整个页面或仅视口。默认值:falsepath(string, 可选):保存截图的路径。如果未提供,则返回 Base64 编码的图像
click
点击指定元素。 参数:
selector(string, 必填):要点击的元素的 CSS 选择器waitForSelector(boolean, 可选):是否等待选择器出现。默认值:true
type
在输入字段中输入文本。 参数:
selector(string, 必填):输入元素的 CSS 选择器text(string, 必填):要输入的文本delay(number, 可选):按键之间的延迟,以毫秒为单位。默认值:0
extract
从页面中提取数据。 参数:
selector(string, 必填):要提取的元素的 CSS 选择器attribute(string, 可选):要提取的属性。如果没有提供,则提取文本内容
evaluate
在浏览器上下文中评估 JavaScript。 参数:
script(string, 必填):要评估的 JavaScript 代码args(array, 可选):传递到脚本的参数
示例用法
-
导航到一个网站:
navigate(url: "https://example.com") -
拍摄截图:
screenshot(fullPage: true) -
点击按钮:
click(selector: "#submit-button") -
填写表单:
type(selector: "#username", text: "user123") type(selector: "#password", text: "password123") click(selector: "#login-button") -
提取数据:
extract(selector: ".product-title", attribute: "innerText")
📚 详细文档
要求
- Node.js 14+
- Playwright 用于浏览器自动化
📄 许可证
本项目采用 MIT 许可证。
Scan to join WeChat group