浏览器自动化工具

一个基于MCP协议的浏览器自动化工具,提供导航、交互、观察等功能,适用于自动化测试和网页操作。

  • by Aneaire
  • 本地部署
  • 更新于
在 GitHub 查看 Aneaire/Bowzer

使用说明

VibeSurf到MCP的转换

此仓库包含了将VibeSurf(一个浏览器自动化扩展+FastAPI后端)转换为现代MCP(模型上下文协议)服务器架构的过程。

🎯 项目概述

原版VibeSurf浏览器自动化聊天扩展 + FastAPI 后端 **新建筑(或:新型建筑)**MCP服务器 + 简化的Chrome扩展程序,实现AI与浏览器的直接通信

📁 仓库结构

├── browsermcp/           # MCP server implementation (TypeScript/Node.js)
│   ├── src/
│   │   ├── config/       # Configuration files
│   │   ├── messaging/    # WebSocket communication
│   │   ├── tools/        # MCP tool definitions
│   │   ├── types/        # TypeScript type definitions
│   │   └── utils/        # Utility functions
│   ├── dist/             # Built server (generated)
│   └── package.json
├── vibesurf/             # Original VibeSurf codebase (Python)
│   └── vibe_surf/
│       ├── backend/      # FastAPI backend
│       ├── browser/      # Browser automation
│       ├── chrome_extension/  # Simplified extension
│       └── agents/       # AI agents
├── .config/              # OpenCode configuration
└── docs/                 # Documentation

🚀 快速入门

1. MCP服务器设置

cd browsermcp
npm install
npm run build

2. Chrome 扩展程序

  • 负载 vibesurf/vibe_surf/chrome_extension/ 在Chrome开发者模式下作为未打包扩展
  • 该扩展通过WebSocket连接到MCP服务器

3. OpenCode 配置

该 .config/opencode/opencode.json 已经配置为使用MCP服务器。

🛠️ 可用工具

MCP服务器提供以下浏览器自动化工具:

  • 导航: navigate, go_back, go_forward
  • 交互: click, type, hover, select_option
  • 观察: snapshot, screenshot
  • 公用事业: press_key, wait, get_console_logs

🔧 技术细节

MCP 服务器

  • 框架TypeScript + Node.js
  • 协议;议定书模型上下文协议(MCP)
  • 交流WebSocket 到 Chrome 扩展
  • 工具用于类型安全的Zod模式

Chrome 扩展程序

  • 建筑学简化自原始的VibeSurf
  • 权限最小化(仅活动标签页、脚本、标签页)
  • 交流WebSocket客户端连接到MCP服务器

整合

  • **OpenCode(奥普恩代码)**配置在 .config/opencode/opencode.json
  • 克劳德·科德可配置为 mcpServers 在 claude.json

📚 文档

  • idea.md - 原始转换概念
  • mcp_design.md - 技术设计决策
  • browsermcp/README.md - MCP服务器文档

🔄 转换状态

✅ 已完成:

  • 带有浏览器自动化工具的MCP服务器
  • 服务器与扩展程序之间的WebSocket通信
  • OpenCode 集成
  • 构建系统和TypeScript编译

🔄 旋转或循环(符号本身无特定中文含义,常用于表示循环、旋转等动作或状态) 进行中:

  • 标签页特定的会话管理
  • 增强的错误处理

🤝 贡献(或“参与贡献”)

这是一个转换项目,展示了如何将浏览器自动化从传统API迁移到MCP标准,以实现现代化。

📄 许可证

请参阅各个目录中的许可信息。