Render-fetch
Drop-in upgrade to Claude's WebFetch that auto-detects JS-rendered pages and fetches them with Playwright headless browser
render-fetch
Drop-in upgrade to Claude Code's WebFetch — handles JS-rendered pages automatically.
Claude's built-in WebFetch doesn't execute JavaScript. Modern SPAs return empty skeletons. render-fetch auto-detects whether a page needs a real browser and routes accordingly — no config needed.
Installation
Add to your Claude Code settings (~/.claude/settings.json):
{
"mcpServers": {
"render-fetch": {
"command": "npx",
"args": ["-y", "render-fetch"]
}
}
}
First run installs Chromium (~150MB, one-time). Subsequent runs are instant.
How it works
URL in
│
├─ GET page (fast, reuses response)
│
├─ Score for JS-rendering signals
│ <div id="root/app/__next"> +3
│ thin body (<500 chars) +2
│ data-reactroot / ng-version +2
│ window.__REDUX_STATE__ +2
│ bundled JS patterns +1
│ .md / docs domain -3
│
├─ Score < 3 → Static path
│ HTTP → cheerio → Readability → markdown
│
└─ Score ≥ 3 → Browser path
Playwright headless → networkidle → Readability → markdown
Tools
| Tool | What it does | Key params | Returns |
|---|---|---|---|
fetch | Fetch page as markdown (auto-detects mode) | url, mode (auto/static/browser), maxLength (default 50k), timeout (default 30s) | Clean markdown |
fetch_raw | Fetch page as raw HTML | url, mode, timeout | Raw HTML string |
screenshot | Take a viewport screenshot | url, fullPage (default false), timeout | Base64 PNG (max 2MB) |
Why not always use the browser? Static path averages ~200ms. Browser path averages 2–3s plus Chromium launch overhead on first request.
Known limitations
- DNS rebinding: hostname validation happens before the request; a malicious server could theoretically redirect to a private IP after validation. Mitigation planned for v1.1.
- Local use only: not designed for multi-tenant server deployments. For that, put a rate-limiting reverse proxy in front.
- Chromium install: ~150MB one-time download on first browser-mode request.
Contributing
See CONTRIBUTING.md.
License
MIT © 2026 sub-techie09
Máy chủ liên quan
Bright Data
nhà tài trợDiscover, extract, and interact with the web - one interface powering automated access across the public internet.
MCP Go Colly Crawler
A web crawling framework that integrates the Model Context Protocol (MCP) with the Colly web scraping library.
Cloudflare Playwright
Control a browser for web automation tasks like navigation, typing, clicking, and taking screenshots using Playwright on Cloudflare Workers.
Browser MCP
A fast, lightweight MCP server that empowers LLMs with browser automation via Puppeteer’s structured accessibility data, featuring optional vision mode for complex visual understanding and flexible, cross-platform configuration.
SearchMCP
Connect any LLM to the internet with the cheapest, most reliable, and developer-friendly search API.
Open Crawler MCP Server
A web crawler and text extractor with robots.txt compliance, rate limiting, and page size protection.
Chrome MCP Server
Control a Chrome browser instance using the Chrome DevTools Protocol (CDP).
WebScraping.AI
Interact with WebScraping.AI for web data extraction and scraping.
MCP Node Fetch
Fetch web content using the Node.js undici library.
Fetch MCP Server
Fetches web content from a URL and converts it from HTML to markdown for easier consumption by LLMs.
Social & Content MCP Server
Trending content from Hacker News, Dev.to, IMDb, podcasts, and Eventbrite