Unagi-cq/cdp-bridge-mcp

MCP server that bridges clients to a real browser through CDP and a companion extension.

解决的问题

CDP Bridge MCP 让大型语言模型(LLM)和 AI 代理能够与用户实际、活跃的浏览器会话交互。与传统的无头浏览器自动化(如 Playwright)不同,它避免了管理单独浏览器实例或手动转移 cookie 和登录状态的需求,因为它直接连接到用户已打开并验证的页面。

工作原理

系统由三个部分组成:一个 MCP 服务器(用 Python 编写)、一个 Chromium 浏览器扩展,以及一个 MCP 兼容的客户端(如 Claude Desktop)。

  1. 连接:MCP 客户端通过 stdio 或 streamable-http 连接到服务器。同时,浏览器扩展通过 WebSocket 连接到服务器。
  2. 路由:服务器使用令牌将特定的 MCP 客户端映射到特定的浏览器配置文件/会话,允许在同一台机器上进行多用户或多账户隔离。
  3. 执行:当 LLM 调用工具时,服务器将命令发送给扩展,扩展使用 chrome.scripting 或 Chrome DevTools 协议(CDP)在浏览器页面中执行 JavaScript,并返回结果。

适用对象

  • AI 代理开发者:正在构建需要在用户自己的浏览器中代表用户执行操作的产品。
  • 高级用户:希望 LLM 在他们已登录的网站上分析、抓取或自动化任务的个人。
  • 运维/支持团队:需要协调多个浏览器账户或远程浏览器会话以进行数据收集或客户服务的团队。

亮点

  • 会话重用:利用现有的浏览器登录状态、cookie 和页面状态。
  • 更轻量的令牌使用:包含一个 browser_scan 工具,可简化 HTML 以减少令牌浪费,同时保留结构信息。
  • 多租户支持:通过基于令牌的隔离,支持跨不同计算机的多个浏览器配置文件和多个用户。
  • 灵活部署:可通过 stdio 在本地运行,或使用 streamable-http 部署为远程服务。
  • 全面的工具集:提供 12 个工具,用于标签页管理、页面观察、元素交互(点击/填写)、JavaScript 执行、截图和导航。

相关

  • 项目
  • 项目
  • 项目
  • 项目