Mittelstufe 11 Min.Stack

Firecrawl: Lokales RAG mit Seiten versorgen web

Direkte Antwort

Firecrawl ist ein Open-Source-Webcrawler (Kern unter AGPL-3.0, mehr als 186.000 GitHub-Sterne Ende September 2026), der eine Seite oder eine ganze Website für ein Modell in sauberes Markdown oder JSON umwandelt. Er lässt sich mit Docker Compose selbst hosten, aber der Standard-Stack enthält weder Screenshots noch Seitenaktionen noch die erweiterten Funktionen zur Umgehung von Anti-Bot-Schutzmechanismen des verwalteten Dienstes: Diese Funktionen bleiben Firecrawl Cloud vorbehalten.

Firecrawl wandelt eine Webadresse in bereinigten Text um, den ein Modell direkt lesen kann: Das Menü, der Cookie-Banner, die Skripte und die Fußzeile verschwinden, der Artikel bleibt. Das ist der erste Schritt einer RAG-Pipeline, der über die Qualität aller folgenden Schritte entscheidet. Das Projekt ist quelloffen und lässt sich selbst hosten, wodurch es mit einer vollständig lokalen Installation kompatibel ist — vorausgesetzt, Sie wissen genau, was die selbst gehostete Version im Vergleich zum gleichnamigen Onlinedienst nicht leistet.

Von Mohamed Meguedmi·Aktualisierung 2026-09-28·Unter Windows, macOS und Linux getestet

#Das Problem, das gelöst wird

Einem lokalen Modell eine Webseite zu geben, indem man ihren HTML-Code einfügt, verschwendet den größten Teil des Kontextfensters für Tags, Menüs und Skripte. Schlimmer noch: Das Modell behandelt Navigationseinträge als Inhalt und antwortet am Thema vorbei. Jede ernsthafte Verarbeitungskette für die Dokumentenrecherche beginnt daher mit einem Extraktionsschritt, der eine einzige Frage beantwortet: Was auf dieser Seite ist der Artikel?

Firecrawl erledigt diese Aufgabe und übernimmt auch die zugehörige Logik für das Durchlaufen der Website: internen Links folgen, an einer von Ihnen festgelegten Grenze stoppen, das JavaScript von Websites ausführen, die ohne dieses nichts anzeigen, und ein strukturiertes Ergebnis pro Seite liefern. Die Ausgabe erfolgt in Markdown oder JSON, zwei Formaten, die sich sauber in Abschnitte für die Indexierung aufteilen lassen. Das Projekt, das auf GitHub unter dem Namen firecrawl/firecrawl gehostet wird und von seinen Autoren als „the web data API to search, scrape, and interact at scale“ beschrieben wird, hatte Ende September 2026 mehr als 186.000 Sterne – ein Zeichen für Zuspruch, das bei der Auswahl einer langfristig zu pflegenden Abhängigkeit zählt.

#Scrape, crawl, map, extract: vier unterschiedliche Aufgaben

Das RAG-Local-Kit

Ihre Dokumente, Ihre KI: ein zuverlässiges lokales RAG für Ihre PDFs, Notizen und E-Mails – ohne Daten in die Cloud zu senden.

  • Lebenslanger Online-Zugang
  • PDF + Dateien
  • Erstattung binnen 30 Tagen
Die vier Operationen und ihr praktischer Einsatz
OperationWas sie tutWann einsetzen
ScrapeEine Adresse als Eingabe, bereinigter Inhalt als AusgabeSie kennen bereits die genaue Seite
CrawlDurchsucht eine Website ausgehend von einer Startadresse und folgt dabei den internen LinksGanze Dokumentation einlesen
MapGibt die Liste der Adressen einer Website zurück, ohne deren Inhalte abzurufenEntscheiden, welche Inhalte aufgenommen werden sollen, bevor Sie Zeit dafür aufwenden
ExtractExtrahiert strukturierte Felder nach einem Schema, das Sie vorgebenSie möchten eine Tabelle mit Preisen oder technischen Daten, keinen Fließtext

Zwei Gewohnheiten verhindern die meisten unangenehmen Überraschungen: vor einem Crawl einen Map-Aufruf ausführen, um die Struktur der Website zu sehen, bevor man mit der Arbeit daran beginnt; und für jeden Crawl eine ausdrückliche Seitenbegrenzung festlegen, denn eine Dokumentation mit Seitennavigation und Sprachvarianten ist oft zehnmal größer, als sie auf den ersten Blick erscheint.

#Selbst hosten

Dieser Weg ist für uns interessant, wenn die gesamte Verarbeitungskette auf Ihrer Hardware bleiben soll. Es handelt sich um einen Docker-Compose-Stack aus mehreren Diensten: der API, PostgreSQL als standardmäßiger Warteschlange (eine optionale FoundationDB-Engine steht für diejenigen zur Verfügung, die sie benötigen), Redis, RabbitMQ und Playwright als Browserdienst ohne Benutzeroberfläche für Seiten, die erst nach der Ausführung von JavaScript existieren. Die offizielle Anleitung legt eine bestimmte Version des Repositorys fest, statt den Hauptbranch zu verwenden – Ende September 2026 ist das v2.11.162 – und weist darauf hin, dass eine andere Version möglicherweise eine andere Compose-Datei verwendet. Der offizielle Befehl zum Starten des Stacks lautet docker compose up --build -d. Anschließend antwortet die API lokal auf Port 3002 und verwendet dieselben Anfrageformate wie die Onlineversion.

#Was vor dem Start des Stacks erforderlich ist

Laut der offiziellen Dokumentation genügen vier Voraussetzungen: Git zum Abrufen des Repositorys, Docker Engine oder Docker Desktop, Docker Compose v2 (aufgerufen als docker compose, ohne Bindestrich) und curl, um zu prüfen, ob die API nach dem Start des Stacks antwortet. Port 3002 muss frei sein, und der Rechner muss über genügend Ressourcen verfügen, um mehrere Container parallel zu bauen und auszuführen — ohne dass das Projekt konkrete Anforderungen an RAM oder CPU garantiert.

  1. 01
    Zuerst die Seite zum Selbsthosting des Projekts lesen
    Das ist die einzige aktuelle Quelle, und sie weist ausdrücklich darauf hin, dass der Schnellstart in einem vertrauenswürdigen Netzwerk die API-Authentifizierung deaktiviert und keine Architektur für den Produktivbetrieb darstellt.
  2. 02
    Die Browserfrage klären
    Ohne Browser-Rendering erhalten Sie statisches HTML: ideal für eine Dokumentation, nutzlos bei einer Single-Page-Webanwendung, die ihre Inhalte mit JavaScript erzeugt.
  3. 03
    Die Lizenz auf Vereinbarkeit mit Ihrer Nutzung prüfen
    Der Kern des Projekts steht unter der AGPL-3.0, einer freien Lizenz mit starkem Copyleft; die Client-SDKs werden hingegen unter der MIT-Lizenz vertrieben. Für ein kommerzielles Produkt, das veränderten Code weiterverbreitet, sollten Sie die Lizenz lesen, statt Annahmen über ihre Bedingungen zu treffen.
  4. 04
    Den Betrieb dimensionieren
    Das Projekt veröffentlicht keine garantierte Mindestgröße des Rechners für diesen Stack: Anders als beim verwalteten Dienst tragen Sie selbst die Verantwortung für Updates, Secrets, Speicherung, Überwachung und Wiederherstellung nach einem Zwischenfall.
  5. 05
    Dauerhaften Speicher hinzufügen, bevor man sich darauf verlässt
    Der Schnellstart fügt keine persistenten Volumes hinzu: Laut Dokumentation „startet er ohne dauerhaften Speicher, TLS, Hochverfügbarkeit und den vollen Funktionsumfang von Firecrawl Cloud“. Ohne manuell hinzugefügte Volumes für PostgreSQL, Redis und RabbitMQ bleiben die Daten beim Austausch der Container nicht erhalten — dieses Problem beheben, bevor Sie sich auf einen nur einmal eingelesenen Korpus verlassen.
!
Selbst zu hosten bedeutet nicht, anonym zu sein
Der Bot ruft die Seiten über Ihre IP-Adresse mit einem identifizierbaren User-Agent ab und unterliegt weiterhin den Nutzungsbedingungen der Zielwebsite sowie deren robots.txt-Datei. Das Hosten der Software verändert den Ort, an dem der Text verarbeitet wird, nicht das Recht, ihn zu sammeln.
→
Auch ein „gesunder“ Dienst kann fehlschlagen
Der API-Prüfendpunkt /v0/health/readiness ist ein Lebenszeichen, kein Ende-zu-Ende-Test: Die offizielle Dokumentation stellt klar, dass er „weder Redis noch PostgreSQL, RabbitMQ, Playwright, die Worker oder den ausgehenden Netzwerkzugriff prüft“. Wenn ein Aufruf von /v2/scrape fehlschlägt, obwohl diese Prüfung grün ist, sehen Sie in den Protokollen der Container api und playwright-service nach statt beim Healthcheck.

#Firecrawl über einen Agenten steuern: der offizielle MCP-Server

Um einen MCP-kompatiblen Agenten (Claude Code, Cursor oder einen selbst entwickelten Client) mit dieser selbst gehosteten Instanz zu verbinden, ohne eine HTTP-Integration zu schreiben, stellt das Projekt einen offiziellen MCP-Server bereit: firecrawl-mcp-server. Mit seinem vollständigen Profil stellt er standardmäßig bis zu 26 Tools bereit, einschließlich Feedback. Die Umgebungsvariable FIRECRAWL_API_URL verweist ihn auf Ihre lokale Bereitstellung statt auf den Online-Dienst; ein API-Schlüssel kann optional angegeben werden, falls Ihre Instanz einen verlangt. Das ist der direkteste Weg, einem lokalen Agenten die Möglichkeit zu geben, das Web zu durchsuchen, zu erkunden und Daten daraus zu extrahieren, ohne den Datenverkehr über einen Dritten zu leiten — vorausgesetzt, der Agent selbst läuft auf Ihrem Rechner oder in einem vertrauenswürdigen Netzwerk.

#Was dem lokalen Stack fehlt

Ein Punkt, den viele erst nach der Bereitstellung des Stacks entdecken: Selbsthosting in der Standardkonfiguration deckt nicht alle Funktionen des Online-Dienstes ab. Laut offizieller Dokumentation sind Screenshots und Seitenaktionen (Klicken, Scrollen, Ausfüllen eines Formulars vor dem Lesen des Ergebnisses) im Standard-Stack nicht verfügbar. Dasselbe gilt für die Funktionen Agent und Browser, die Option „interact“, die Rückmeldung zur Nutzung und einige spezialisierte Formate (Menü, Audio, Video): Diese Bausteine bleiben Firecrawl Cloud vorbehalten. Auch die erweiterten Verfahren zur Umgehung von Anti-Bot-Maßnahmen der proprietären Engine des verwalteten Dienstes sind nicht in dieser Form enthalten.

Ein weiterer nützlicher Hinweis vor dem Start: Die durch ein Sprachmodell unterstützte Extraktion (der Modus „extract“, der durch eine Anweisung in natürlicher Sprache statt durch ein Schema gesteuert wird) setzt voraus, dass Sie selbst einen mit der OpenAI-API kompatiblen Anbieter oder Ollama anbinden und diesen Ablauf separat testen. Diese Anbindung ist im selbst gehosteten Stack nicht automatisch eingerichtet. All das hindert Sie nicht daran, Firecrawl lokal zu verwenden, um ein RAG mit Daten zu versorgen – genau das ist der zentrale Anwendungsfall dieses Leitfadens. Sie sollten es aber wissen, bevor Sie einem Team eine Funktion versprechen.

#Wo es sich in einen lokalen RAG einordnet

Eine funktionierende lokale Verarbeitungskette besteht aus vier Stufen, und Firecrawl übernimmt nur die erste: Die Ingestion wandelt Adressen in Dokumente um; durch Aufteilung und Kodierung werden diese mit einem lokalen Embedding-Modell in Vektoren umgewandelt; eine Vektordatenbank speichert diese Vektoren und gibt die Passagen zurück, die einer Frage am nächsten liegen; schließlich formuliert ein lokales Modell anhand dieser Passagen die Antwort.

Für Dateien, die bereits auf Ihrer Festplatte liegen – PDFs, Office-Dokumente, Präsentationen –, benötigen Sie keinen Webcrawler, sondern einen Dokumentenkonverter wie Docling. Und wenn ein Modell beim Antworten das Web durchsuchen soll, statt einen vorab eingelesenen Korpus zu verwenden, ist eine selbst gehostete Metasuchmaschine wie SearXNG der passende Baustein: Sie liefert Ergebnisse auf Anfrage statt eines Index, der aktualisiert werden muss.

#Wann Sie es nicht verwenden sollten

Das richtige Tool entsprechend dem Bedarf
Ihr BedarfDas, was besser passt
Ab und zu eine Seite konvertierenEine kleine Bibliothek zur Umwandlung von HTML in Markdown in Ihrem Skript
PDF-Dateien und lokale Dokumente einlesenEin Dokumentkonverter wie Docling, kein Webcrawler
Aktuelle Antworten aus dem Web direkt im GesprächEine selbst gehostete Suchmaschine, die an das Modell angebunden ist
Screenshots oder komplexe SeitenaktionenDer verwaltete Dienst Firecrawl Cloud, standardmäßig nicht im Stack enthalten
Eine vollständige Dokumentation, regelmäßig, automatisiertSelbst gehostetes Firecrawl — genau dafür ist es gedacht

#Worauf rechtlich zu achten ist

Die automatische Sammlung von Seiten unterliegt Ihrer Verantwortung, nicht der des Tools. Die Allgemeinen Geschäftsbedingungen der betroffenen Website, ihre Roboter-Regeln (robots.txt), das anwendbare Recht und Ihre Nutzung des Inhalts sind wichtiger als die verwendete Technik. Bei einem internen Unternehmenskorpus ergibt sich zusätzlich die Frage des Umgangs mit möglichen personenbezogenen Daten in den gesammelten Seiten sowie der Notwendigkeit, die Herkunft jeder Quelle im Datenverarbeitungsregister zu dokumentieren.

#FAQ

Ist Firecrawl im Selbsthosting kostenlos?+
Der Kerncode ist unter der AGPL-3.0-Lizenz offen verfügbar (die Client-SDKs unter der MIT-Lizenz) und läuft auf Ihrer Hardware ohne Lizenzkosten. Dafür kostet Sie der Betrieb Zeit: Es handelt sich um einen Stack aus mehreren Containern — API, Worker, Warteschlange, Browser ohne Benutzeroberfläche —, den Sie selbst warten, ohne den Support des verwalteten Dienstes.
Kann die selbst gehostete Version alles, was der Online-Dienst kann?+
Nein. Die offizielle Dokumentation führt ausdrücklich auf, was im Standard-Stack fehlt: Screenshots, Seitenaktionen, die Funktionen Agent und Browser, fortgeschrittene Verfahren zur Umgehung von Anti-Bot-Maßnahmen und bestimmte Spezialformate. Der Kern — das Abrufen und Konvertieren von Seiten mit scrape, crawl, map und extract — funktioniert vollständig.
Ist für Firecrawl eine GPU erforderlich?+
Nein. Das Erkunden des Webs, das JavaScript-Rendering über den Playwright-Dienst und die Umwandlung von HTML in Markdown beanspruchen Prozessor, Arbeitsspeicher und Netzwerk, nicht die GPU-Rechenleistung. Planen Sie stattdessen ausreichend verfügbare CPU-Leistung und RAM ein, um mehrere Container parallel zu betreiben. Die GPU kommt erst später in der Verarbeitungskette zum Einsatz, für die Erstellung von Embeddings und die Antwortgenerierung durch das lokale Modell, das anschließend den extrahierten Text nutzt.
Kann er Websites lesen, die JavaScript benötigen?+
Ja: Der standardmäßige Stack enthält eigens einen Playwright-Dienst für das Rendern im Browser, der vor der Extraktion das JavaScript der Seite ausführt. Ohne diesen aktiven Dienst ruft Firecrawl nur das vom Server gelieferte statische HTML ab. Das scheitert bei Single-Page-Anwendungen, die ihre Inhalte nach dem ersten Laden clientseitig aufbauen. Wenn eine Seite leer bleibt, prüfen Sie zuerst die Protokolle des Containers playwright-service.
Welche Unterschiede gibt es zwischen Crawl und Map?+
Map listet die auf einer Website gefundenen Adressen auf, ohne deren Inhalte abzurufen: Das ist schnell und ressourcenschonend und eignet sich ideal, um die Größe einer Website abzuschätzen, bevor Sie sich auf das Crawlen festlegen. Crawl ruft tatsächlich jede verfolgte Seite ab und konvertiert sie. Wenn Sie zuerst die Website kartografieren und anschließend eine gefilterte Teilmenge crawlen, vermeiden Sie es, Hunderte von Seiten einzulesen, die Sie gar nicht haben wollten.
Funktioniert die KI-basierte Extraktion (Modus extract) direkt lokal?+
Nicht ohne Konfiguration: Eine durch eine natürlichsprachliche Anweisung gesteuerte Extraktion setzt voraus, dass Sie selbst einen mit der OpenAI-API oder Ollama kompatiblen Anbieter anbinden und diesen Ablauf anschließend separat testen. Anders als beim Online-Dienst ist diese Anbindung im selbst gehosteten Stack standardmäßig nicht eingerichtet.
Hat Ihnen dieser Guide geholfen?

Haben Sie Feedback, einen Fehler entdeckt oder möchten Sie etwas präzisieren? Geben Sie uns Bescheid – so wird der Guide für alle besser.