De meeste “autonome” AI-agents hebben een handicap die niemand in de demo laat zien: ze kunnen het live web niet zien. Het model redeneert briljant over alles wat je in de context plakt, maar vraag het wat een prijspagina op dit moment zegt en het hallucineert vanuit verouderde trainingsdata, of het wacht tot jij HTML voor het kopieert en plakt, als een verpleegkundige die een patiënt met een lepeltje voert. Firecrawl lost precies die laag op: het zet elke URL via één API om in schone, LLM-klare markdown of gestructureerde JSON, en via de MCP-server klikt het direct in Claude Code. Hier lees je wat het doet, hoe je het aansluit en waar de grenzen echt liggen.
Een agent-pipeline die het web leest, staat of valt met één onspectaculair ding: of een opgehaalde pagina binnenkomt als schone tekst waar een agent over kan redeneren, of als 400KB aan navigatiemenu's, cookiebanners en hydration-payloads die het antwoord verzuipen. De webdatalaag is de beperkende factor. Al het andere is promptpoets.

Wat Firecrawl eigenlijk is
Firecrawl is een webdata-API die gebouwd is voor gebruik door AI. Geef het een URL en je krijgt markdown, gestructureerde JSON, een screenshot of ruwe HTML terug, met navigatie-chrome, advertenties en toestemmingsbanners verwijderd, en JavaScript-zware pagina's die vóór de extractie in een echte browser worden gerenderd. Als je ooit een gewone HTTP-client op een React-SPA hebt gericht en een lege <div id="root"> terugkreeg, dan is die renderstap de hele waardepropositie.
Het is ook geen npm-pakketje van een weekend. Het project is open source onder AGPL-3.0 met een grote community eromheen, en het bedrijf erachter, opgericht door Caleb Peffer, Eric Ciarla en Nicolas Silberstein Camara, een Y Combinator S22-team, haalde in augustus 2025 een Series A van $14,5 miljoen op onder leiding van Nexus Venture Partners, met deelname van Y Combinator en Shopify-CEO Tobi Lütke. Ik noem de financiering om één praktische reden: als je een pipeline op een datalaag bouwt, wil je aanwijzingen dat die laag volgend jaar nog bestaat.
De toolset, gekoppeld aan wanneer je naar welk onderdeel grijpt
Firecrawl biedt een aantal afzonderlijke functies, en weten welke bij welke klus past, is het verschil tussen een efficiënte pipeline en een vreugdevuur van credits:
- Scrape: één URL erin, schone content eruit. Het werkpaard. De markdown-modus past direct in het contextvenster van een agent.
- Map: geeft snel elke URL op een domein terug, zonder content te scrapen. Gebruik het als verkenning: eerst mappen, dan alleen de pagina's scrapen die ertoe doen. Deze ene gewoonte bespaart de meeste credits.
- Crawl: volgt interne links en scrapet elke pagina die het vindt. Goed om een documentatiesite in een kennisbank te laden; verkeerd voor “ik heb drie pagina's nodig” (dat is map + gerichte scrapes).
- Search: webzoekopdrachten die de volledige pagina-inhoud van de topresultaten als markdown teruggeven, geen snippets. Voor research-agents brengt dit “zoeken en dan elke hit scrapen” terug tot één call.
- Extract: LLM-gestuurde gestructureerde extractie: beschrijf in gewone taal de velden die je wilt en krijg JSON terug. Dit vervangt handgeschreven parse-logica, en het blijft werken nadat een redesign van een site elke CSS-selector heeft gebroken die je anders had geschreven.
- Screenshots: screenshots van de volledige pagina, van header tot footer, handig voor audits en documentatie.
Het architectuurpunt dat je moet verinnerlijken: traditionele scrapers leggen vast hoe je data ophaalt (selectors, waits, pagineringslogica) en breken als dat hoe verandert. De extractie van Firecrawl legt vast wat je wilt, en dat overleeft redesigns. Dat is de onderhoudsafweging die rechtvaardigt dat je ervoor betaalt.
Firecrawl via MCP aansluiten op Claude Code
De snelste route voor Claude Code-gebruikers is de officiële MCP-server, die scrape, crawl, map, search en extract beschikbaar maakt als native tools die de agent midden in een gesprek kan aanroepen. Setup:
1. Haal een API-key op bij firecrawl.dev: de maandelijkse credits van de gratis tier zijn genoeg om alles in deze post te testen.
2. Registreer de MCP-server:
claude mcp add firecrawl -e FIRECRAWL_API_KEY=fc-YOUR_KEY -- npx -y firecrawl-mcp
3. Start een nieuwe sessie. Dit is de valkuil achter de meeste “het werkt niet”-klachten: nieuw toegevoegde MCP-servers worden opgepikt bij de start van een sessie, niet halverwege. Open een nieuwe sessie en vraag “welke Firecrawl-tools heb je?”; je zou firecrawl_scrape, firecrawl_map, firecrawl_crawl en aanverwanten in de lijst moeten zien.
Als de tools niet verschijnen, zijn de gebruikelijke verdachten: Node staat niet in je PATH, een afgekapte API-key (het voorvoegsel fc- hoort erbij), of je moet de host-app volledig herstarten in plaats van een nieuwe chat te openen. Zodra de verbinding er is, gebeuren verzoeken als “scrape deze prijspagina en vat de tierstructuur samen” in één gespreksbeurt: de agent roept de tool aan, ontvangt schone markdown en analyseert die, zonder kopieer-en-plakstap en zonder opschoonpipeline.
Eén configuratiemening op basis van het draaien hiervan naast andere servers: elke MCP-server die je koppelt, kost contextvenster aan tooldefinities. Als webdata je behoefte is, koppel dan Firecrawl en sla overbodige scraping-servers over. Mijn criteria voor welke servers een plek verdienen, staan in mijn onmisbare MCP's voor Claude Code.
Wat het in mijn stack heeft vervangen
Vóór deze categorie tools betekende een typisch agentproject dat het web raakte: Playwright voor JS-rendering, parsing in BeautifulSoup-stijl per site-indeling, een proxyservice voor rate limits en een opschoonslag om boilerplate te verwijderen, plus de terugkerende belasting van dat allemaal repareren zodra een doelsite een redesign uitrolde. Het faalpatroon was nooit het happy path; het was de breuk op dinsdagochtend nadat iemand anders zijn HTML had veranderd.
Met een webdata-API valt die hele stack samen tot tool calls, en verschuift het onderhoudsoppervlak naar het engineeringteam van iemand anders. Waar eigen browserautomatisering nog steeds wint: ingelogde flows, interacties in meerdere stappen en sites waar je precieze controle over timing nodig hebt. Voor de leesintensieve 90% (research, verificatie, monitoring, ingestie) wint de API op total cost of ownership, en het is niet eens close.
De use cases die een vaste plek verdienen:
- Claimverificatie. Controleer prijzen, versies en datums tegen live bronnen voordat je publiceert. Schone markdown erin, oordeel eruit: het patroon achter mijn geautomatiseerde researchstrategie in Claude Code.
- Concurrentie- en marktonderzoek. Map een site, scrape prijs- en featurepagina's en laat de agent een gestructureerde vergelijking maken. Wat vroeger een middag vol tabbladen was, is nu één prompt.
- Merkaudits. Scrape een site en haal kleurenpalet, typografie en tone of voice eruit in een stijldocument, voordat je aan een voorstel begint.
- Docs-ingestie. Crawl een documentatiesite naar een kennisbank die een agent kan bevragen, in plaats van pagina's een voor een te plakken.
Als je agents bouwt in plaats van losse scripts, past dit in als de waarnemingslaag van een grotere architectuur. De redeneer- en orkestratiekant van dat plaatje behandelt de Anthropic Agent SDK, en het coördineren van meerdere gespecialiseerde agents over gedeelde data is het terrein van mijn artikel over agent-swarm-architectuur.
Kosten en de credit-valkuilen, actueel voor 2026
De prijzen zijn veranderd sinds de begindagen van Firecrawl, dus negeer oudere posts die lifetime-credits noemen. Op het moment van schrijven: de gratis tier geeft 1.000 credits per maand, Hobby kost $16/maand voor 5.000 credits, Standard $83/maand voor 100.000 en Growth $333/maand voor 500.000. Dat zijn de tarieven bij jaarlijkse facturering; per maand betalen kost meer.
De valkuilen zitten in de vermenigvuldigers. Een basis-scrape kost 1 credit, maar JSON-extractie voegt 4 credits per pagina toe, en andere scrape-opties stapelen daar bovenop. Budgetteer op je slechtste kosten per pagina, niet op het basistarief, anders zit je rekensom voor de Hobby-tier er meerdere keren naast. Credits worden op standaardabonnementen ook niet meegenomen naar de volgende maand, dus kies de tier op basis van je werkelijke maandvolume.
De nooduitgang die je moet kennen: het project is echt open source, en je kunt het met Docker zelf hosten zonder API-kosten. Ik zou daarvoor kiezen bij pipelines met hoog volume of data met compliance-beperkingen, met open ogen voor de afweging: je erft het tunen van browserinstanties, geheugenbeheer en proxyconfiguratie. Beheerde API voor gemak, zelf hosten voor volume; beide zijn legitiem.
Verantwoord scrapen, van iemand die aan beide kanten staat
Dit werkt twee kanten op: agents halen pagina's van anderen op, en site-eigenaren hebben AI-crawlers die die van hen ophalen. Ik heb geschreven over hoe AI-crawlers verschillen van zoekmachinebots. Zie dit dus als meer dan een compliance-voetnoot.
Respecteer robots.txt en de gebruiksvoorwaarden. Houd het aantal verzoeken redelijk: de ingebouwde rate limiting en backoff van de MCP-server helpen, maar de verantwoordelijkheid ligt bij jou, niet bij de tool. Wees voorzichtig met persoonsgegevens; de AVG (GDPR) is van toepassing als je gegevens van EU-inwoners verwerkt, ongeacht waar je de scraper draait. En strategisch: de sites die je scrapet, zetten steeds vaker verdediging tegen AI-bots in. Bouw pipelines die zich als nette burgers gedragen, want de wapenwedloop rond vijandige scrapers is er een die je uiteindelijk verliest.
De eerlijke grenzen
Drie dingen om te weten voordat je je vastlegt. Extractie is erg goed, niet perfect: dichte datatabellen, interactieve grafieken en content achter JavaScript-eventhandlers kunnen onvolledig terugkomen, en voor die gevallen schrijf je nog steeds gerichte automatisering. De latency is seconden, geen milliseconden: statische pagina's komen snel terug, zware SPA's duren merkbaar langer en grote crawls duren minuten; dit is een batchtool, geen realtime tool. En LLM-gestuurde extractie is niet deterministisch: productiepipelines hebben er validatie- en retry-logica omheen nodig, net als bij elke andere modeloutput.
Geen van deze punten is een dealbreaker. Ze vormen het verschil tussen “magie” en “goede infrastructuur”, en goede infrastructuur is de juiste verwachting.
Waar dit je agents laat
Het patroon waar ik na 8+ jaar systemen bouwen en 1.500+ projecten steeds op terugkom: sprongen in capaciteit komen van het toevoegen van zintuigen, niet alleen van grotere breinen. Een agent met live webtoegang is niet langer een chatbot die redeneert over wat jij hem voert, maar wordt een systeem dat zelf kan gaan halen wat het nodig heeft (onderzoeken, verifiëren, monitoren, ingesteren) terwijl jij de resultaten beoordeelt. Firecrawl is op dit moment de schoonste manier die ik ken om dat zintuig aan een Claude Code-setup toe te voegen, en door de MCP-integratie kost het uitproberen je één terminalcommando en een key van de gratis tier.
Ik bouw web-verbonden agents en de pipelines eromheen (extractie, verificatie, monitoring en de orkestratie die ze eerlijk houdt) als klantwerk. Vertel me welke data je nodig hebt en hoe vaak die verandert, dan schets ik de vorm van de pipeline voordat je je ergens aan vastlegt: stuur me hier een bericht.