此 MCP(模型上下文协议)服务器提供了使用 Cloudflare 浏览器渲染获取和处理网页内容的工具,以便在大语言模型中作为上下文使用。它设计用于与 Claude 和 Cline 客户端环境一起工作。
<a href="https://glama.ai/mcp/servers/35u5mo3dm5"> <img width="380" height="200" src="https://gips1.baidu.com/it/u=4067979961,3740436486&fm=3081&app=3081&f=PNG?w=760&h=400" alt="cloudflare-browser-rendering-mcp MCP 服务器" /> </a>puppeteer-worker.js 文件部署的 Cloudflare Worker要通过 Smithery 自动安装 Cloudflare 浏览器渲染到 Claude Desktop:
npx -y @smithery/cli install @amotivv/cloudflare-browser-rendering-mcp --client claude
克隆此仓库:
git clone https://github.com/yourusername/cloudflare-browser-rendering.git
cd cloudflare-browser-rendering
安装依赖项:
npm install
构建项目:
npm run build
使用 Wrangler 将 puppeteer-worker.js 文件部署到 Cloudflare Workers:
npx wrangler deploy
确保在您的 Cloudflare Worker 中配置以下绑定:
browser 的浏览器渲染绑定SCREENSHOTS 的 KV 命名空间绑定注意您已部署的 worker 的 URL(例如,https://browser-rendering-api.yourusername.workers.dev)
打开 Claude Desktop 配置文件:
# macOS
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
# Windows
code %APPDATA%\Claude\claude_desktop_config.json
添加 MCP 服务器配置:
{
"mcpServers": {
"cloudflare-browser-rendering": {
"command": "node",
"args": ["/path/to/cloudflare-browser-rendering/dist/index.js"],
"env": {
"BROWSER_RENDERING_API": "https://your-worker-url.workers.dev"
},
"disabled": false,
"autoApprove": []
}
}
}
重启 Claude Desktop
打开 Cline MCP 设置文件:
# macOS
code ~/Library/Application\ Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
# Windows
code %APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json
添加 MCP 服务器配置:
{
"mcpServers": {
"cloudflare-browser-rendering": {
"command": "node",
"args": ["/path/to/cloudflare-browser-rendering/dist/index.js"],
"env": {
"BROWSER_RENDERING_API": "https://your-worker-url.workers.dev"
},
"disabled": false,
"autoApprove": []
}
}
}
一旦配置完成,MCP 服务器将在 Claude Desktop 和 Cline 中可用。您可以使用以下工具:
获取并处理网页以供大语言模型使用。
参数:
url(必需):要获取的 URLmaxContentLength(可选):返回的最大内容长度示例:
你能获取并总结 https://developers.cloudflare.com/browser-rendering/ 的内容吗?
搜索 Cloudflare 文档并返回相关内容。
参数:
query(必需):搜索查询maxResults(可选):返回的最大结果数示例:
搜索 Cloudflare 文档以获取有关“浏览器渲染 API”的信息。
使用 CSS 选择器从网页中提取结构化内容。
参数:
url(必需):要提取内容的 URLselectors(必需):用于提取内容的 CSS 选择器示例:
使用选择器 h1 和 p 从 https://developers.cloudflare.com/browser-rendering/ 提取主要标题和第一段。
总结网页内容以提供更简洁的大语言模型上下文。
参数:
url(必需):要总结的 URLmaxLength(可选):摘要的最大长度示例:
将 https://developers.cloudflare.com/browser-rendering/ 的内容总结为 300 字或更少。
捕获网页的截图。
参数:
url(必需):要截屏的 URLwidth(可选):视口宽度(默认:1280 像素)height(可选):视口高度(默认:800 像素)fullPage(可选):是否截取整个页面还是仅视口(默认:false)示例:
截取 https://developers.cloudflare.com/browser-rendering/ 的屏幕,宽度为 1024 像素。
MCP 服务器使用带有以下前缀的综合日志:
[Setup]:初始化和配置[API]:API 请求和响应[Error]:错误处理和调试查看日志:
~/Library/Logs/Claude/mcp*.log(macOS)或 %APPDATA%\Claude\Logs\mcp*.log(Windows)中的日志"BROWSER_RENDERING_API 环境变量未设置"
"Cloudflare worker API 无法访问或未配置"
"浏览器绑定不可用"
"SCREENSHOTS KV 绑定不可用"
src/index.ts:主入口点src/server.ts:MCP 服务器实现src/browser-client.ts:与 Cloudflare 浏览器渲染交互的客户端src/content-processor.ts:处理网页内容以供大语言模型使用puppeteer-worker.js:Cloudflare Worker 实现npm run build
项目包括一个全面的测试脚本,验证所有 MCP 工具是否正常工作:
npm test
这将:
您还可以针对特定组件运行单独的测试:
# 测试 Puppeteer 集成
npm run test:puppeteer
为了使测试正常工作,请确保:
npm run build 构建项目BROWSER_RENDERING_API 环境变量设置为您 Cloudflare Worker 的 URLMIT