Cloudflare Browser
Control headless Chrome via Cloudflare Browser Rendering CDP WebSocket. Use for screenshots, page navigation, scraping, and video capture when browser…
Install
Quick install
npx skills add https://github.com/cloudflare/moltworker/tree/HEAD/skills/cloudflare-browsernpx skills add cloudflare/moltworker --skill cloudflare-browser --agent claude-codenpx skills add cloudflare/moltworker --skill cloudflare-browser --agent cursornpx skills add cloudflare/moltworker --skill cloudflare-browser --agent codexnpx skills add cloudflare/moltworker --skill cloudflare-browser --agent opencodenpx skills add cloudflare/moltworker --skill cloudflare-browser --agent github-copilotnpx skills add cloudflare/moltworker --skill cloudflare-browser --agent windsurfMore install options
Shorthand — useful for multi-skill repos:
npx skills add cloudflare/moltworker --skill cloudflare-browserManual — clone the repo and drop the folder into your agent's skills directory:
git clone https://github.com/cloudflare/moltworker.gitcp -r moltworker/skills/cloudflare-browser ~/.claude/skills/cloudflare-browser
Control headless Chrome via Cloudflare Browser Rendering CDP WebSocket. Use for screenshots, page navigation, scraping, and video capture when browser…
cloudflare-browserby cloudflare
Control headless Chrome via Cloudflare Browser Rendering CDP WebSocket. Use for screenshots, page navigation, scraping, and video capture when browser…npx skills add https://github.com/cloudflare/moltworker --skill cloudflare-browserDownload ZIPGitHub
Cloudflare Browser Rendering
Control headless browsers via Cloudflare's Browser Rendering service using CDP (Chrome DevTools Protocol) over WebSocket.
Prerequisites
CDP_SECRETenvironment variable set
- Browser profile configured in openclaw.json with
cdpUrlpointing to the worker endpoint:
`"browser": {
"profiles": {
"cloudflare": {
"cdpUrl": "https://your-worker.workers.dev/cdp?secret=..."
}
}
}
`
Quick Start
Screenshot
`node /path/to/skills/cloudflare-browser/scripts/screenshot.js https://example.com output.png
`
Multi-page Video
`node /path/to/skills/cloudflare-browser/scripts/video.js "https://site1.com,https://site2.com" output.mp4
`
CDP Connection Pattern
The worker creates a page target automatically on WebSocket connect. Listen for Target.targetCreated event to get the targetId:
`const WebSocket = require('ws');
const CDP_SECRET = process.env.CDP_SECRET;
const WS_URL = `wss://your-worker.workers.dev/cdp?secret=${encodeURIComponent(CDP_SECRET)}`;
const ws = new WebSocket(WS_URL);
let targetId = null;
ws.on('message', (data) => {
const msg = JSON.parse(data.toString());
if (msg.method === 'Target.targetCreated' && msg.params?.targetInfo?.type === 'page') {
targetId = msg.params.targetInfo.targetId;
}
});
`
Key CDP Commands
CommandPurposePage.navigateNavigate to URLPage.captureScreenshotCapture PNG/JPEGRuntime.evaluateExecute JavaScriptEmulation.setDeviceMetricsOverrideSet viewport size
Common Patterns
Navigate and Screenshot
`await send('Page.navigate', { url: 'https://example.com' });
await new Promise(r => setTimeout(r, 3000)); // Wait for render
const { data } = await send('Page.captureScreenshot', { format: 'png' });
fs.writeFileSync('out.png', Buffer.from(data, 'base64'));
`
Scroll Page
`await send('Runtime.evaluate', { expression: 'window.scrollBy(0, 300)' });
`
Set Viewport
`await send('Emulation.setDeviceMetricsOverride', {
width: 1280,
height: 720,
deviceScaleFactor: 1,
mobile: false
});
`
Creating Videos
- Capture frames as PNGs during navigation
- Use ffmpeg to stitch:
ffmpeg -framerate 10 -i frame_%04d.png -c:v libx264 -pix_fmt yuv420p output.mp4
Troubleshooting
- No target created: Race condition - wait for Target.targetCreated event with timeout
- Commands timeout: Worker may have cold start delay; increase timeout to 30-60s
- WebSocket hangs: Verify CDP_SECRET matches worker configuration
More skills from cloudflare
write-endpointsby cloudflareComprehensive guide for building OpenAPI endpoints with chanfana - schema definition, request validation, CRUD operations, D1 database integration, and…agents-sdkby cloudflareBuild AI agents on Cloudflare Workers using the Agents SDK. Load when creating stateful agents, durable workflows, real-time WebSocket apps, scheduled tasks,…building-ai-agent-on-cloudflareby cloudflareCreates AI-powered agents using Cloudflare's Agents SDK with persistent state, real-time communication, and tool integration.building-mcp-server-on-cloudflareby cloudflareCreates production-ready Model Context Protocol servers on Cloudflare Workers with tools, authentication, and deployment.changelogby cloudflareCreates, updates, and reviews product changelog entries for the Cloudflare documentation site. Load when generating changelog MDX files, editing existing…cloudflareby cloudflareComprehensive Cloudflare platform skill covering Workers, Pages, storage (KV, D1, R2), AI (Workers AI, Vectorize, Agents SDK), networking (Tunnel, Spectrum),…code-reviewby cloudflareReviews Workers and Cloudflare Developer Platform code for type correctness, API usage, and configuration validity. Load when reviewing TypeScript/JavaScript…docs-reviewby cloudflareReviews documentation PRs and provides GitHub PR suggestions. Load when asked to review, suggest changes, or provide feedback on docs content. Covers MDX,…---
Source: https://github.com/cloudflare/moltworker/tree/HEAD/skills/cloudflare-browser
Author: cloudflare
Discovered via: mcpservers.org
SKILL.md source
---
name: cloudflare-browser
description: Control headless Chrome via Cloudflare Browser Rendering CDP WebSocket. Use for screenshots, page navigation, scraping, and video capture when browser…
---
# cloudflare-browser
Control headless Chrome via Cloudflare Browser Rendering CDP WebSocket. Use for screenshots, page navigation, scraping, and video capture when browser…
# cloudflare-browserby cloudflare
Control headless Chrome via Cloudflare Browser Rendering CDP WebSocket. Use for screenshots, page navigation, scraping, and video capture when browser…
`npx skills add https://github.com/cloudflare/moltworker --skill cloudflare-browser`Download ZIPGitHub
## Cloudflare Browser Rendering
Control headless browsers via Cloudflare's Browser Rendering service using CDP (Chrome DevTools Protocol) over WebSocket.
## Prerequisites
* `CDP_SECRET` environment variable set
* Browser profile configured in openclaw.json with `cdpUrl` pointing to the worker endpoint:
```
`"browser": {
"profiles": {
"cloudflare": {
"cdpUrl": "https://your-worker.workers.dev/cdp?secret=..."
}
}
}
`
```
## Quick Start
### Screenshot
```
`node /path/to/skills/cloudflare-browser/scripts/screenshot.js https://example.com output.png
`
```
### Multi-page Video
```
`node /path/to/skills/cloudflare-browser/scripts/video.js "https://site1.com,https://site2.com" output.mp4
`
```
## CDP Connection Pattern
The worker creates a page target automatically on WebSocket connect. Listen for Target.targetCreated event to get the targetId:
```
`const WebSocket = require('ws');
const CDP_SECRET = process.env.CDP_SECRET;
const WS_URL = `wss://your-worker.workers.dev/cdp?secret=${encodeURIComponent(CDP_SECRET)}`;
const ws = new WebSocket(WS_URL);
let targetId = null;
ws.on('message', (data) => {
const msg = JSON.parse(data.toString());
if (msg.method === 'Target.targetCreated' && msg.params?.targetInfo?.type === 'page') {
targetId = msg.params.targetInfo.targetId;
}
});
`
```
## Key CDP Commands
CommandPurposePage.navigateNavigate to URLPage.captureScreenshotCapture PNG/JPEGRuntime.evaluateExecute JavaScriptEmulation.setDeviceMetricsOverrideSet viewport size
## Common Patterns
### Navigate and Screenshot
```
`await send('Page.navigate', { url: 'https://example.com' });
await new Promise(r => setTimeout(r, 3000)); // Wait for render
const { data } = await send('Page.captureScreenshot', { format: 'png' });
fs.writeFileSync('out.png', Buffer.from(data, 'base64'));
`
```
### Scroll Page
```
`await send('Runtime.evaluate', { expression: 'window.scrollBy(0, 300)' });
`
```
### Set Viewport
```
`await send('Emulation.setDeviceMetricsOverride', {
width: 1280,
height: 720,
deviceScaleFactor: 1,
mobile: false
});
`
```
## Creating Videos
* Capture frames as PNGs during navigation
* Use ffmpeg to stitch: `ffmpeg -framerate 10 -i frame_%04d.png -c:v libx264 -pix_fmt yuv420p output.mp4`
## Troubleshooting
* No target created: Race condition - wait for Target.targetCreated event with timeout
* Commands timeout: Worker may have cold start delay; increase timeout to 30-60s
* WebSocket hangs: Verify CDP_SECRET matches worker configuration
## More skills from cloudflare
write-endpointsby cloudflareComprehensive guide for building OpenAPI endpoints with chanfana - schema definition, request validation, CRUD operations, D1 database integration, and…agents-sdkby cloudflareBuild AI agents on Cloudflare Workers using the Agents SDK. Load when creating stateful agents, durable workflows, real-time WebSocket apps, scheduled tasks,…building-ai-agent-on-cloudflareby cloudflareCreates AI-powered agents using Cloudflare's Agents SDK with persistent state, real-time communication, and tool integration.building-mcp-server-on-cloudflareby cloudflareCreates production-ready Model Context Protocol servers on Cloudflare Workers with tools, authentication, and deployment.changelogby cloudflareCreates, updates, and reviews product changelog entries for the Cloudflare documentation site. Load when generating changelog MDX files, editing existing…cloudflareby cloudflareComprehensive Cloudflare platform skill covering Workers, Pages, storage (KV, D1, R2), AI (Workers AI, Vectorize, Agents SDK), networking (Tunnel, Spectrum),…code-reviewby cloudflareReviews Workers and Cloudflare Developer Platform code for type correctness, API usage, and configuration validity. Load when reviewing TypeScript/JavaScript…docs-reviewby cloudflareReviews documentation PRs and provides GitHub PR suggestions. Load when asked to review, suggest changes, or provide feedback on docs content. Covers MDX,…
---
**Source**: https://github.com/cloudflare/moltworker/tree/HEAD/skills/cloudflare-browser
**Author**: cloudflare
**Discovered via**: mcpservers.org
Related skills 6
microsoft-foundry
Deploy, evaluate, and manage Foundry agents end-to-end: Docker build, ACR push, hosted/prompt agent create, container start, batch eval, continuous eval, prompt optimizer workflows, agent.yaml, dataset curation from traces. USE FOR: deploy agent to Foundry, hosted agent, create agent, invoke agent, evaluate agent, run batch eval, continuous eval, continuous monitoring, continuous eval status, optimize prompt, improve prompt, prompt optimizer, optimize agent instructions, improve agent instruc...
azure-ai
Use for Azure AI: Search, Speech, OpenAI, Document Intelligence. Helps with search, vector/hybrid search, speech-to-text, text-to-speech, transcription, OCR. WHEN: AI Search, query search, vector search, hybrid search, semantic search, speech-to-text, text-to-speech, transcribe, OCR, convert text to speech.
azure-deploy
Execute Azure deployments for ALREADY-PREPARED applications that have existing .azure/deployment-plan.md and infrastructure files. DO NOT use this skill when the user asks to CREATE a new application — use azure-prepare instead. This skill runs azd up, azd deploy, terraform apply, and az deployment commands with built-in error recovery. Requires .azure/deployment-plan.md from azure-prepare and validated status from azure-validate. WHEN: "run azd up", "run azd deploy", "execute deployment", "p...
azure-diagnostics
Debug Azure production issues on Azure using AppLens, Azure Monitor, resource health, and safe triage. WHEN: debug production issues, troubleshoot app service, app service high CPU, app service deployment failure, troubleshoot container apps, troubleshoot functions, troubleshoot AKS, kubectl cannot connect, kube-system/CoreDNS failures, pod pending, crashloop, node not ready, upgrade failures, analyze logs, KQL, insights, image pull failures, cold start issues, health probe failures, resource...
azure-resource-lookup
List, find, and show Azure resources across subscriptions or resource groups. Handles prompts like "list the websites in my subscription", "list my web apps", "show my app services", "list virtual machines", "list my VMs", "show storage accounts", "find container apps", and "what resources do I have". USE FOR: list websites, list web apps, list app services, show websites in subscription, resource inventory, find resources by tag, tag analysis, orphaned resource discovery (not for cost analys...
azure-resource-visualizer
Analyze Azure resource groups and generate detailed Mermaid architecture diagrams showing the relationships between individual resources. WHEN: create architecture diagram, visualize Azure resources, show resource relationships, generate Mermaid diagram, analyze resource group, diagram my resources, architecture visualization, resource topology, map Azure infrastructure.