本项目聚焦于利用 Cloudflare 浏览器渲染技术提取网络内容,将其作为大语言模型(LLM)的上下文。通过对 REST API 和 Workers Binding API 的实验,以及 MCP 服务器的实现,为 LLM 提供网页上下文支持。
本项目致力于探索 Cloudflare 浏览器渲染技术在不同场景下的应用,借助实验和具体实现,深入研究 REST API 和 Workers Binding API,并提供完整的 MCP(管理控制平面)服务器,用于处理网页内容。
git clone [your-repository-url]
cd cloudflare-browser-rendering
npm install
npm start
basic-worker-example.js):展示在 Cloudflare Worker 中运用浏览器渲染技术抓取和解析网页内容。minimal-worker-example.js):精简版的浏览器渲染实现,便于快速验证功能。puppeteer-binding/):演示在 Cloudflare 环境中使用@cloudflare/puppeteer库操作浏览器上下文。content-extraction/):针对不同网页结构的内容抓取和解析方法。BROWSER_BINDING指定浏览器绑定服务的 URL(默认值为http://localhost:8080)。winston库进行日志输出,支持不同级别的日志记录和文件存储。export BROWSER_BINDING=http://your-binding-service-url:port
npm run build
npm start
http://localhost:3000POST /render:提交需要渲染的网页 URL。GET /results:获取最近的渲染结果。git clone [your-repository-url]
cd cloudflare-browser-rendering
npm install
npm start
在克隆项目并安装依赖后,可通过以下命令启动 MCP 服务器:
npm start
若需配置不同的浏览器绑定服务 URL,可按以下步骤操作:
export BROWSER_BINDING=http://your-binding-service-url:port
npm run build
npm start
cloudflare-browser-rendering/
├── examples/ # 示例实现和工具
│ ├── basic-worker-example.js # 带浏览器渲染的基本Worker示例
│ ├── minimal-worker-example.js # 最小化实现示例
│ ├── debugging-tools/ # 调试工具
│ │ └── debug-test.js # 调试测试工具
│ └── testing/ # 测试工具
│ └── content-test.js # 内容测试工具
├── experiments/ # 教育实验
│ ├── basic-rest-api/ # REST API测试
│ ├── puppeteer-binding/ # Workers Binding API测试
│ └── content-extraction/ # 内容处理测试
├── src/ # MCP服务器源代码
│ ├── index.ts # 主入口点
│ ├── server.ts # MCP服务器实现
│ ├── browser-client.ts # 浏览器渲染客户端
│ └── content-processor.ts # 内容处理工具
├── puppeteer-worker.js # Cloudflare Worker的浏览器绑定示例
├── test-puppeteer.js # 主实现测试
├── wrangler.toml # Wrangler配置文件(用于部署Worker)
├── cline_mcp_settings.json.example # Cline使用的MCP设置示例
├── .gitignore # Git忽略文件
└── LICENSE # MIT许可证
本项目主要涉及 Cloudflare 浏览器渲染技术,通过对 REST API 和 Workers Binding API 的实验,实现网页内容的提取和处理。MCP 服务器作为核心组件,负责管理和控制浏览器渲染任务,使用winston库进行日志记录,确保系统的稳定性和可维护性。
本项目采用 MIT 许可证。