Render-fetch
Actualización directa para WebFetch de Claude que detecta automáticamente páginas renderizadas con JS y las obtiene con el navegador headless Playwright
Documentación
render-fetch
Mejora directa para WebFetch de Claude Code: maneja páginas renderizadas con JavaScript automáticamente.
La función WebFetch integrada de Claude no ejecuta JavaScript. Las SPA modernas devuelven esqueletos vacíos. render-fetch detecta automáticamente si una página necesita un navegador real y enruta en consecuencia, sin necesidad de configuración.
Instalación
Agrega a la configuración de Claude Code (~/.claude/settings.json):
{
"mcpServers": {
"render-fetch": {
"command": "npx",
"args": ["-y", "render-fetch"]
}
}
}
La primera ejecución instala Chromium (~150MB, una sola vez). Las ejecuciones posteriores son instantáneas.
Cómo funciona
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
Herramientas
| Herramienta | Qué hace | Parámetros clave | Devuelve |
|---|---|---|---|
fetch | Obtiene la página como markdown (detecta el modo automáticamente) | url, mode (auto/static/browser), maxLength (por defecto 50k), timeout (por defecto 30s) | Markdown limpio |
fetch_raw | Obtiene la página como HTML crudo | url, mode, timeout | Cadena HTML crudo |
screenshot | Toma una captura de pantalla del viewport | url, fullPage (por defecto false), timeout | PNG en Base64 (máx. 2MB) |
¿Por qué no usar siempre el navegador? La ruta estática promedia ~200ms. La ruta del navegador promedia 2–3s más la sobrecarga de iniciar Chromium en la primera solicitud.
Limitaciones conocidas
- Rebinding de DNS: la validación del nombre de host ocurre antes de la solicitud; un servidor malicioso podría teóricamente redirigir a una IP privada después de la validación. Mitigación planificada para v1.1.
- Solo uso local: no está diseñado para despliegues de servidor multi-tenant. Para eso, coloca un proxy inverso con límite de tasa al frente.
- Instalación de Chromium: descarga única de ~150MB en la primera solicitud en modo navegador.
Contribuciones
Consulta CONTRIBUTING.md.
Licencia
MIT © 2026 sub-techie09