LaskoBOT — 协议v2,多实例,跨浏览器
LaskoBOT 版本 1.30.7
](https://github.com/david-strejc/browsermcp-enhanced/releases)  
现代MCP服务器+浏览器扩展,实现通过单一WebSocket守护进程进行可靠、多实例自动化。
✨ 特点/功能
✨ 精彩瞬间
- 单个WS守护进程(8765),多个会话(Claude实例)
- 会话级别的标签路由和所有权管理(无串扰)
- 在Chrome和Firefox之间统一工具
- 自动重连(Firefox添加了警报+在线钩子)
🚀 快速入门
先决条件
- Node.js 20+(版本)
- Chrome 或 Firefox
- 克劳德·科德
- 同样适用于WSL2和Windows版Chrome
安装
第一步 - 部署脚本
git clone https://github.com/david-strejc/browsermcp-enhanced.git
cd browsermcp-enhanced
./scripts/deploy步骤2 - 安装systemd服务(HTTP + WS守护进程):
- 选项A:用户服务(推荐给nvm用户使用,无需sudo权限):
./scripts/systemd-user-install.sh- 选项B:系统服务(需要sudo权限):
sudo ./scripts/systemd-install.sh --user "$USER" \
--install-dir "/home/$USER/.local/lib/browsermcp-enhanced" \
--http-port 3000 --ws-port 8765第三步 - 加载扩展程序(每次仅限一个浏览器):
- Chrome:
chrome://extensions→ 开发者模式 → 加载未打包扩展 →chrome-extension/ - Firefox:
about:debugging#/runtime/this-firefox→ 加载临时插件 →firefox-extension/manifest.json
步骤4 - 配置MCP
{
"mcpServers": {
"browsermcp": {
"type": "http",
"url": "http://127.0.0.1:3000/mcp"
}
}
}如需了解详细的架构和故障排除信息,请参阅 ADVANCE_INFO.md 翻译为中文是:“提前信息.md” 或者更自然地表达为 “预先信息文件.md”(其中,“.md”通常表示Markdown格式的文件)
🐛 已知问题
- WebSocket重连可能需要重启Chrome浏览器
- 一些实施严格内容安全策略(CSP)的网站可能需要启用不安全模式
- Safari 和 Firefox 的支持将在 v2.0.0 版本中到来
- 在代理之后/通过代理: 如果你使用代理,请设置
NO_PROXY=localhost,127.0.0.1允许本地连接
📖 使用方法
基本导航
// Navigate to a URL
await browser_navigate({ url: "https://example.com" })
// Snapshot
await snapshot.accessibility({ mode: 'scaffold' })
// Click an element
await browser_click({ ref: "button-1", element: "Submit button" })JavaScript 执行
// Plain DOM
await js.execute({ code: "return document.title" })
// Safe operation (no code)
await js.execute({ method: 'query', args: ['h3', { attrs: ['textContent'], limit: 10 }] })
// Unsafe (enable in extension options first)
await js.execute({ code: "(function(){ return location.href })()", unsafe: true })表单自动化
// Multi-step form filling
await browser_multitool({
intent: "form_fill",
snapshot: snapshotData,
fields: {
"username": "john.doe",
"email": "john@example.com",
"message": "Hello world"
}
})调试与日志
守护进程: /tmp/browsermcp-daemon.log, /tmp/browsermcp-events.log Chrome: chrome://extensions → 检查(背景) Firefox: about:debugging → 检查(背景)
🔧 高级配置
环境变量
# Allow all origins (development)
BROWSER_MCP_ALLOWED_ORIGINS="*"
# Specific origins (production)
BROWSER_MCP_ALLOWED_ORIGINS="https://example.com,https://app.example.com"
# Custom WebSocket port
BROWSER_MCP_PORT=8765扩展选项(Firefox)
- 不安全模式切换(必要时使用)
unsafe: true)
📚 API参考
核心工具
browser_navigate,browser_go_back,browser_go_forwarddom.click,dom.type,dom.hover,dom.selectsnapshot.accessibilitytabs.list,tabs.select,tabs.new,tabs.closeconsole.get,screenshot.capture,js.execute
🧪 测试
# Run tests
npm test
# Quick test
npm run test:quick
# With coverage
npm run test:coverage🛠️ 开发
# Watch mode
npm run watch
# Type checking
npm run typecheck
# Inspector
npm run inspector📝 更新日志
见 CHANGELOG.md 翻译为中文是:“变更日志文件(Markdown 格式)” 查看详细版本历史。
v1.0.0(最新版)
- 🚀 首个可投入生产的发布版
- ✅ 基于RPC的安全模式执行
- ✅ 沙盒化的iframe隔离
- ✅ 全面的测试套件
- ✅ 完整文档
🤝 贡献
欢迎贡献!请随时提交拉取请求。
- 为仓库创建分支(或“克隆仓库”)
- 创建你的特性分支(
git checkout -b feature/AmazingFeature) - 提交您的更改(
git commit -m 'Add some AmazingFeature') - 推送到分支(
git push origin feature/AmazingFeature) - 打开一个拉取请求(Pull Request)
📄 许可证
这个项目遵循MIT许可证授权——详见 许可证 文件中有详细信息。
🙏 致谢
🐛 已知问题
- WebSocket重新连接可能需要重启Chrome浏览器
- 一些实施严格内容安全策略(CSP)的网站可能需要启用不安全模式
- Safari 和 Firefox 的支持将在 v2.0.0 版本中加入
📞 支持
______________________________________________________________________
由LaskoBOT贡献者们用心打造
