The open Firecrawl alternative
Scrape, crawl, map, extract, and parse any website. Stealth mode, multi-step actions, MCP, and scheduled snapshots in one SDK.
$1.00 / 1,000 pages crawled
// Recursively crawl a docs siteconst crawl = await stack0.crawl.startAndWait({url: "https://docs.example.com",maxDepth: 3,maxPages: 200,formats: ["markdown", "links"],respectRobotsTxt: true,stealth: true,});for (const page of crawl.pages ?? []) {console.log(page.url, page.markdown?.slice(0, 120));}
What's included
Recursive Crawl
Multi-page sites to markdown — robots.txt, sitemap priming, depth limits.
Fast URL Map
Discover every URL via sitemap + link crawl in seconds.
AI Extraction
Schema-guided JSON extraction with no brittle selectors.
Screenshots
Device, viewport, region, PDF, dark mode, ad blocking.
Document Parsing
PDFs and DOCX files → clean markdown for RAG.
Actions
Click, type, scroll, wait, press — drive any page before capture.
Stealth Mode
playwright-extra stealth patches enabled by default.
MCP Ready
Every capability exposed as an MCP tool for Claude, Cursor, agents.
Built for production
Firecrawl-compatible Crawl
Recursive site crawl with depth, path filters, and per-page webhooks.
stack0.crawl.startAndWait({ url, maxDepth, maxPages })Instant Sitemap Discovery
Map a 5k-URL site in under 10 seconds with graceful link-crawl fallback.
stack0.map.createAndWait({ url, search: 'api' })Multi-step Actions
Drive SPAs, logins, and infinite-scroll pages before capturing content.
actions: [{ type: 'click', selector }, { type: 'wait', ... }]Scheduled Snapshots
Run any scrape on a cron with threshold-based change webhooks.
stack0.extraction.createSchedule({ frequency: 'daily', detectChanges: true })PDF / DOCX → Markdown
Pipe enterprise docs into RAG without a custom parser.
stack0.documents.parseAndWait({ url: '...whitepaper.pdf' })Built for real applications
RAG Pipelines
Ingest entire docs sites and PDFs into markdown-ready chunks.
AI Agents
Give agents a live web — scrape, crawl, and map with one SDK.
Competitive Monitoring
Scheduled scrapes with change detection, delivered via webhook.
Lead Enrichment
Extract structured data from company sites with schema-based extraction.
Content Migration
Crawl a legacy site and export clean markdown for your new CMS.
Document Intelligence
Parse thousands of PDFs into markdown for search and embeddings.
Simple, usage-based
FAQ
Frequently asked questions
Same shape of APIs — crawl, map, search, extract, screenshot — with richer scheduled snapshots, PDF/DOCX parsing, and an MCP server. Pricing starts at $1 per 1,000 pages crawled.
Yes. We run playwright-extra with the stealth plugin by default on every scrape. Pass stealth: false to disable, or configure your own residential proxy via WEBDATA_PROXY_SERVER.
Yes, by default on crawl endpoints. Set respectRobotsTxt: false to override for sites you own.
Yes. npx @stack0/mcp exposes crawl, map, search, extract, screenshot, and document tools over MCP with one environment variable.
Pass an actions array with type/click/press/wait/scroll/execute_js on any scrape, extraction, crawl, or search request. The page runs your actions first, then captures the content.