Back to MCP directory
publicPublicdnsLocal runtime

browse-together-mcp

一个基于Playwright的浏览器代理与MCP服务集成项目,支持通过HTTP API或MCP客户端控制浏览器会话

article

README

🚀 浏览器代理服务与MCP服务器

本项目可让你在桌面上运行 Playwright 浏览器和 MCP 服务器。你既能启动一个有头浏览器用于人类交互,又能配套运行一个 MCP 服务器,该服务器可通过 HTTP API 或自身来控制浏览器。此项目提供了两个相辅相成的服务,用于浏览器自动化和协同浏览,为相关操作带来极大便利。

✨ 主要特性

  • 多浏览器支持:支持 Chromium(默认)或 Firefox,满足不同用户的浏览器使用需求。
  • 持久浏览器会话:一个浏览器实例在其服务生命周期内持续运行,无需频繁重启,提升使用效率。
  • 页面管理:可列出所有活跃的浏览器页面,并能关闭特定页面,方便用户管理浏览器页面。
  • 内容操作:支持填写表单字段、点击元素、获取页面 HTML 内容以及执行浏览器上下文中的 fetch 请求,实现多样化的页面操作。

📚 详细文档

此项目通过一系列文档描述了增量规划步骤:

其中部分步骤可能已过时或不再相关,但作为参考和了解项目构建过程而被保留。

更多关于我们的本地沙迪(Sandy)犹他州振动编码小组的信息,请访问 vibe-coders.org

📦 安装指南

开发步骤

  • 运行浏览器代理deno task browser
  • 运行MCP服务器deno task mcp
  • 格式化代码deno fmt
  • 检查依赖项deno check --all browser.ts mcp.ts types.ts

🔧 技术细节

架构

+----------------+      +--------------+      +------------------+
|                |      |              |      |                  |
| Cline/LLM      | ---- | MCP Server   | ---- | Browser Service  |
| (MCP 客户端)   |      | (mcp.ts)     | HTTP | (browser.ts)     |
|                |      |              |      |                  |
+----------------+      +--------------+      +------------------+
                               |                       |
                          FastMCP API            Playwright API
                               |                       |
                           标准输入/输出流       Chromium 浏览器

系统工作原理如下:

  1. 浏览器服务browser.ts)使用 Playwright 管理一个持久的 Chromium 浏览器实例。
  2. MCP 服务器mcp.ts)提供标准 MCP 接口,使用 FastMCP。
  3. MCP 服务器通过 HTTP 将命令转发到浏览器服务。
  4. MCP 客户端 如 Claude Desktop 可以通过简单的工具调用来使用所有浏览器功能。
help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client