网站转MCP服务器工具

browse2mcp是一个将任何网站API流量记录并生成完整MCP服务器的工具,支持REST和GraphQL,自动处理认证,适用于快速创建自然语言交互的API工具。

  • by danielthedm
  • TypeScript
  • 本地部署
  • 7 星标
  • 更新于
在 GitHub 查看 danielthedm/browse2mcp

使用说明

浏览器2mcp

将任何网站转换为MCP服务器。浏览一个站点,浏览2mcp记录API流量,并为它看到的每个端点生成一个完全工作的MCP服务器和工具。

运作原理

  1. 记录 -打开浏览器,正常使用网站,它会捕获所有API请求
  2. 生成 --分析捕获的流量,并为每个端点生成一个带有一个工具的TypeScript MCP服务器
  3. 使用 -将生成的服务器连接到Claude Desktop(或任何MCP客户端),并通过自然语言与API交互

browse2mcp处理REST和GraphQL,检测身份验证模式,烘焙捕获的令牌以实现零配置使用,并包含 login 工具,这样您就可以刷新过期的令牌而无需重新记录。

安装

git clone https://github.com/danielthedm/browse2mcp.git
cd browse2mcp
npm install
npx playwright install chromium

快速开始

1.录制会话

npx tsx bin/browse2mcp.ts record https://app.example.com -o my-session.json

浏览器打开。使用该网站——点击、加载数据、与功能交互。完成后,关闭浏览器。所有API流量都保存到会话文件中。

选项:

标志 描述
-o, --output <path> 输出会话文件(默认值: session.json)
-p, --profile <name> 持久浏览器配置文件——在会话之间保存登录信息
-c, --connect <port> 连接到此调试端口上正在运行的Chrome实例
-v, --verbose 详细日志记录

2.生成MCP服务器

npx tsx bin/browse2mcp.ts generate my-session.json -o my-mcp --name my-server --full

这会分析记录的流量,生成一个TypeScript MCP服务器,安装依赖项,构建它,并提示您将其添加到Claude Desktop配置中。

选项:

标志 描述
-o, --output <path> 输出目录(带 --full)或文件路径(默认值: mcp-server.ts)
--full 生成一个完整的项目 package.json, tsconfig.json等等。
--name <name> 服务器名称(默认值: my-mcp-server)
--refine 强制LLM细化工具描述(需要 ANTHROPIC_API_KEY)
--no-refine 跳过LLM细化
-v, --verbose 详细日志记录

3.使用它

生成后,该工具会自动将服务器添加到您的Claude Desktop配置中。重新启动Claude Desktop,工具立即可用。

生成什么

  • 每个端点一个工具 --REST端点获取 list_users, get_user, create_post等等。GraphQL操作使用操作名(get_users, create_user)
  • 身份验证处理 --检测到的身份验证令牌已内置。A login 该工具允许您打开浏览器并在令牌过期时重新进行身份验证
  • 令牌持久性 --来自 login 工具保存到 ~/.browse2mcp/tokens/ 并自动使用
  • 零配置 --生成的服务器可以开箱即用,不需要环境变量

身份验证令牌优先级

检测到身份验证时,生成的服务器将按以下顺序解析令牌:

  1. 持久令牌文件(~/.browse2mcp/tokens/<server-name>.json)--由 login 工具
  2. 环境变量(例如。 API_TOKEN)
  3. 录制过程中捕获的烘烤令牌

例子

从任何web应用程序记录和生成

# Record
npx tsx bin/browse2mcp.ts record https://app.example.com -o my-session.json -p my-app

# Generate
npx tsx bin/browse2mcp.ts generate my-session.json -o my-mcp --name my-app --full

使用持久浏览器配置文件

npx tsx bin/browse2mcp.ts record https://app.example.com -p my-profile

这 -p 标志将浏览器状态(Cookie、本地存储)保存到 ~/.browse2mcp/profiles/my-profile/。下次使用相同的配置文件录制时,您已经登录。

连接到现有的Chrome

# Start Chrome with remote debugging
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222

# Connect browse2mcp to it
npx tsx bin/browse2mcp.ts record https://app.example.com -c 9222

发展

npm test            # Run tests
npm run test:watch  # Watch mode
npm run build       # Compile TypeScript

许可证

麻省理工学院