Intermedio 11 minStack

Firecrawl: alimentar un RAG local con páginas web

Respuesta directa

Firecrawl es un rastreador web de código abierto (núcleo AGPL-3.0, más de 186.000 estrellas en GitHub a finales de septiembre de 2026) que transforma una página o un sitio entero en markdown o JSON limpio para un modelo. Se puede autoalojar con Docker Compose, pero la pila predeterminada no incluye capturas de pantalla, acciones de página ni la evasión avanzada de sistemas antibot del servicio gestionado: estas funciones siguen reservadas a Firecrawl Cloud.

Firecrawl convierte una dirección web en texto limpio, directamente legible por un modelo: desaparecen el menú, el banner de cookies, los scripts y el pie de página; el artículo permanece. Es el primer paso de un pipeline RAG, el que determina la calidad de todo lo que sigue. El proyecto es abierto y se puede alojar en tu propio equipo, lo que lo hace compatible con una instalación completamente local, siempre que sepas con precisión qué no hace la versión autoalojada en comparación con el servicio en línea del mismo nombre.

Por Mohamed Meguedmi·Actualización 2026-09-28·Probado en Windows, macOS y Linux

#El problema que resuelve

Dar una página web a un modelo local pegándole su código HTML desperdicia la mayor parte de la ventana de contexto en etiquetas, menús y scripts. Peor aún: el modelo trata los elementos de navegación como contenido y te responde fuera de tema. Por tanto, cualquier proceso serio de búsqueda documental comienza con una etapa de extracción que responde a una sola pregunta: ¿qué parte de esta página es el artículo?

Firecrawl realiza este trabajo y se encarga de la lógica de recorrido que lo acompaña: seguir los enlaces internos, detenerse al alcanzar un límite que tú estableces, ejecutar el JavaScript de los sitios que no muestran nada sin él y devolver un resultado estructurado por página. La salida es markdown o JSON, dos formatos que se pueden dividir fácilmente en fragmentos para la indexación. El proyecto, alojado en GitHub bajo el nombre firecrawl/firecrawl y descrito por sus autores como «the web data API to search, scrape, and interact at scale», contaba con más de 186 000 estrellas a finales de septiembre de 2026, un indicio de adopción que importa al elegir una dependencia que habrá que mantener a largo plazo.

#Scrape, crawl, map, extract: cuatro funciones diferentes

El kit RAG Local

Tus documentos, tu IA: un RAG local fiable sobre tus PDF, notas y correos — sin enviar nada a la nube.

  • Espacio en línea de por vida
  • PDF + archivos
  • Reembolsado 30 j
Las cuatro operaciones y su uso real
OperaciónLo que haceCuándo usarlo
ScrapeUna dirección como entrada, el contenido limpio como salidaYa conoces la página exacta
CrawlRecorre un sitio desde una dirección de partida siguiendo los enlaces internosIngerir un conjunto completo de documentación
MapDevuelve la lista de direcciones de un sitio sin recuperar su contenidoDecidir qué datos incorporar antes de dedicarle tiempo
ExtractExtrae campos estructurados según un esquema que proporcionasQuieres una tabla de precios o características, no un texto en prosa

Dos hábitos evitan la mayoría de las sorpresas desagradables: ejecutar un map antes de un crawl, para ver la estructura del sitio antes de empezar a trabajar en él; y fijar un límite explícito de páginas en cada crawl, porque una documentación con paginación y variantes de idioma suele ser diez veces más grande de lo que parece.

#Alojarlo en casa

Es el camino que nos interesa si el objetivo es mantener la cadena en tu hardware. Se trata de una pila de Docker Compose con varios servicios: la API, PostgreSQL como cola predeterminada (existe un motor FoundationDB opcional para quien lo necesite), Redis, RabbitMQ y Playwright como servicio de navegador sin interfaz para las páginas que solo existen tras ejecutar JavaScript. La guía oficial fija una versión específica del repositorio en lugar de la rama principal —v2.11.162 a finales de septiembre de 2026— y advierte que otra versión puede usar un archivo Compose diferente. El comando oficial para arrancar la pila es docker compose up --build -d, y luego la API responde localmente en el puerto 3002, con los mismos formatos de solicitud que la versión en línea.

#Lo que se necesita antes de arrancar la pila

Según la documentación oficial, bastan cuatro requisitos previos: Git para obtener el repositorio, Docker Engine o Docker Desktop, Docker Compose v2 (invocado como docker compose, sin guion) y curl para comprobar que la API responde una vez iniciada la pila. El puerto 3002 debe estar libre y la máquina debe tener capacidad suficiente para construir y ejecutar varios contenedores en paralelo, sin que el proyecto garantice una cantidad concreta de RAM ni de recursos de CPU.

  1. 01
    Leer primero la página de autoalojamiento del proyecto
    Es la única fuente actualizada y especifica claramente que el arranque rápido en red de confianza desactiva la autenticación de la API y no es una arquitectura de producción.
  2. 02
    Resolver la cuestión del navegador
    Sin renderizado por navegador, obtienes el HTML estático: perfecto para documentación, inútil en una aplicación web monopágina que construye su contenido en JavaScript.
  3. 03
    Verificar que la licencia sea compatible con tu uso
    El núcleo del proyecto está bajo licencia AGPL-3.0, una licencia libre con fuerte reciprocidad; los SDK cliente, por su parte, se distribuyen bajo licencia MIT. Para un producto comercial que redistribuya el código modificado, hay que leer la licencia en vez de dar por supuestas sus condiciones.
  4. 04
    Dimensionar la operación
    El proyecto no publica una configuración mínima de hardware garantizada para esta pila: tú te encargas de las actualizaciones, los secretos, el almacenamiento, la supervisión y la recuperación tras un incidente, a diferencia del servicio gestionado.
  5. 05
    Añadir almacenamiento persistente antes de depender de él
    El inicio rápido no añade ningún volumen persistente: según la documentación, «arranca sin almacenamiento duradero, TLS, alta disponibilidad ni todas las capacidades de Firecrawl Cloud». Sin volúmenes añadidos manualmente para PostgreSQL, Redis y RabbitMQ, los datos no sobreviven al reemplazo de los contenedores; hay que resolverlo antes de confiar en un corpus cargado una sola vez.
!
El autoalojamiento no implica anonimato
El robot busca las páginas desde tu dirección IP, con un agente de usuario identificable, y permanece sujeto a las condiciones de uso del sitio objetivo y a su archivo robots.txt. Hospedar el software cambia el lugar donde se procesa el texto, no el derecho de recopilarlo.
→
Un servicio «en buen estado» puede fallar aun así
El punto de control /v0/health/readiness de la API es un latido, no una prueba de extremo a extremo: la documentación oficial especifica que «no verifica ni Redis, ni PostgreSQL, ni RabbitMQ, ni Playwright, ni los workers, ni el acceso a la red saliente». Si una llamada a /v2/scrape falla mientras este control está en verde, revisa los registros de los contenedores api y playwright-service en lugar del healthcheck.

#Controlar Firecrawl desde un agente: el servidor MCP oficial

Para conectar un agente compatible con MCP (Claude Code, Cursor o un cliente propio) a esta instancia autoalojada sin escribir una integración HTTP, el proyecto publica un servidor MCP oficial, firecrawl-mcp-server. Con su perfil completo, expone hasta 26 herramientas por defecto, incluida la de feedback. La variable de entorno FIRECRAWL_API_URL dirige ese servidor a tu despliegue local en lugar del servicio en línea, con una clave de API opcional si tu instancia la exige. Es la vía más directa para dar a un agente local la capacidad de buscar, explorar y extraer contenido de la web sin que el tráfico pase por un tercero, siempre que el propio agente se ejecute en tu máquina o en una red de confianza.

#Lo que la pila local no tiene

Lo que muchos descubren después de desplegar la pila, y no antes: el autoalojamiento con la configuración predeterminada no cubre todo lo que hace el servicio en línea. Según la documentación oficial, las capturas de pantalla y las acciones sobre la página (hacer clic, desplazarse, rellenar un formulario antes de leer el resultado) no están disponibles en la pila predeterminada. Lo mismo ocurre con las funciones Agent y Browser, la opción «interact», la información de uso y algunos formatos especializados (menú, audio, vídeo): estos componentes siguen reservados a Firecrawl Cloud. El mecanismo avanzado para eludir las protecciones antibot del motor propietario del servicio gestionado tampoco está incluido tal cual.

Otro matiz útil antes de empezar: la extracción asistida por un modelo de lenguaje (el modo «extract», guiado por una instrucción en lenguaje natural en lugar de un esquema) requiere que conectes tú mismo un proveedor compatible con la API de OpenAI, u Ollama, y pruebes esta vía por separado. No viene conectado automáticamente en la pila autoalojada. Nada de esto impide usar Firecrawl en local para alimentar un RAG —es precisamente el caso de uso central de esta guía—, pero conviene saberlo antes de prometer una funcionalidad a un equipo.

#¿Dónde se coloca en un RAG local?

Una cadena local que funciona tiene cuatro etapas, y Firecrawl ocupa solo la primera: la ingestión convierte las direcciones en documentos; la división en fragmentos y la codificación los convierten en vectores mediante un modelo de embeddings local; una base vectorial almacena estos vectores y devuelve los pasajes más cercanos a una pregunta; finalmente, un modelo local redacta la respuesta a partir de estos pasajes.

Para archivos ya presentes en tu disco —PDF, documentos ofimáticos, presentaciones— no necesitas un rastreador web, sino un convertidor de documentos como Docling. Y si lo que necesitas es que un modelo consulte la web al responder, en lugar de consultar un corpus incorporado de antemano, un metabuscador autoalojado como SearXNG es el componente adecuado: devuelve resultados a demanda en lugar de un índice que haya que actualizar.

#Cuándo no usarlo

La herramienta adecuada según la necesidad
Tu necesidadLo que encaja mejor
Convertir una página de vez en cuandoUna pequeña biblioteca para convertir HTML a markdown en tu script
Ingerir PDF y documentos localesUn convertidor de documentos como Docling, no un robot web
Respuestas web en directo durante una conversaciónUn motor de búsqueda auto-hospedado conectado al modelo
Capturas de pantalla o acciones complejas en páginas webServicio gestionado Firecrawl Cloud, ausente de la pila por defecto
Un conjunto completo de documentación, de forma periódica y automatizadaFirecrawl autoalojado —es precisamente para lo que está pensado

#El aspecto jurídico que debes tener en cuenta

Recopilar páginas automáticamente implica tu responsabilidad, no la de la herramienta. Las condiciones generales del sitio objetivo, sus directivas robots.txt, la legislación aplicable y el uso que hagas del contenido cuentan más que la técnica empleada. Para un corpus interno de empresa, a esta cuestión se añaden la del tratamiento de los datos personales que puedan estar presentes en las páginas recopiladas y la necesidad de documentar de dónde procede cada fuente en el registro de tratamiento.

#FAQ

¿Es Firecrawl gratuito si lo alojas tú mismo?+
El código central está abierto bajo licencia AGPL-3.0 (los SDK clientes bajo licencia MIT) y se ejecuta en tu hardware sin costo de licencia. Sin embargo, pagas en tiempo de operación: es una pila de varios contenedores — API, worker, cola, navegador sin interfaz — que debes mantener tú mismo, sin el soporte del servicio gestionado.
¿La versión auto-hospedada hace todo lo que hace el servicio en línea?+
No. La documentación oficial enumera explícitamente lo que falta en la pila por defecto: capturas de pantalla, acciones de página, funciones Agent y Browser, mecanismos avanzados para eludir las protecciones antibot y algunos formatos especializados. El núcleo —recuperar y convertir páginas mediante scrape, crawl, map y extract— funciona plenamente.
¿Se necesita una GPU para Firecrawl?+
No. Explorar la web, ejecutar el renderizado de JavaScript mediante el servicio Playwright y convertir HTML a markdown son tareas de procesador, memoria y red, no de cálculo GPU. Prevé más bien recursos de CPU y RAM disponibles para ejecutar varios contenedores en paralelo. La GPU solo interviene más adelante en la cadena, para el embedding y la generación de la respuesta por parte del modelo local que después utiliza el texto extraído.
¿Puede leer sitios que necesitan JavaScript?+
Sí: la pila predeterminada incluye específicamente un servicio Playwright dedicado al renderizado por navegador, que ejecuta el JavaScript de la página antes de la extracción. Sin este servicio activo, Firecrawl solo recupera el HTML estático proporcionado por el servidor, lo que falla en aplicaciones monopágina que construyen su contenido en el lado del cliente después de la carga inicial. En caso de página vacía, revisa primero los registros del contenedor playwright-service.
¿Qué diferencia hay entre crawl y map?+
Map lista las direcciones encontradas en un sitio sin recuperar su contenido: es rápido y ligero, ideal para evaluar el tamaño de un sitio antes de comprometerte. Crawl recupera y convierte realmente cada página que rastrea. Cartografiar primero y luego explorar un subconjunto filtrado evita incorporar cientos de páginas que no querías.
¿Funciona directamente la extracción por IA (modo extract) en local?+
No sin configuración: la extracción guiada por una instrucción en lenguaje natural requiere que conectes tú mismo un proveedor compatible con la API de OpenAI u Ollama y que después pruebes esa vía por separado. No está conectado por defecto en la pila autoalojada, a diferencia del servicio en línea.
¿Esta guía te ha ayudado?

¿Un comentario, un error, una precisión? Avísanos, eso mejora la guía para todos.