From fastCRW
Scrapes, crawls, maps, searches, parses, and extracts web data via CLI, MCP, or REST API. Self-hostable Firecrawl-compatible alternative (single Rust binary, ~50MB RAM).
How this skill is triggered — by the user, by Claude, or both
Slash command
/crw:crwThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
The open-source alternative to Firecrawl. One static binary, ~50 MB RAM idle,
The open-source alternative to Firecrawl. One static binary, ~50 MB RAM idle,
Firecrawl-compatible REST API on both /v1/* and /v2/*, first-class MCP, and
a bundled SearXNG search backend — self-host free or use the managed
api.fastcrw.com.
This is the hub skill. It tells you which verb to reach for and in what order. Each verb has its own focused skill — load it when you commit to that step.
crw --version # binary on PATH? (brew install us/crw/crw)
crw_scrape, crw_search, …) — see
crw-self-host for setup, or run zero-install with npx crw-mcp.CRW_API_KEY=crw_live_…
and CRW_API_URL=https://api.fastcrw.com (free tier: 500 one-time lifetime
credits, never resets).Climb the ladder in order. Stop at the cheapest rung that answers the need. Don't reach for a heavier verb than the task requires.
| Step | Verb | Use when | Surface | Skill |
|---|---|---|---|---|
| 1 | search | You have a question/topic, not a URL. SearXNG-backed, self-hosted, no key. | CLI · MCP · REST | crw-search |
| 2 | scrape | You have one (or a few) known URLs and want clean content. | CLI · MCP · REST | crw-scrape |
| 3 | map | You need to discover which URLs exist on a site (fast, no content). | CLI · MCP · REST | crw-map |
| 4 | crawl | You need content from many pages under a site/section. | CLI · MCP · REST | crw-crawl |
| 5 | parse | The source is a local/remote file (PDF), not a web page. | MCP (crw_parse_file) · REST /v2/parse — no standalone CLI verb | crw-parse |
| 6 | extract | You need a typed JSON object out of a page, against a schema. | crw scrape --extract · REST /v2/extract — no standalone CLI verb | crw-extract |
| 7 | watch | You want to detect what changed between two snapshots. | REST /v1/change-tracking/diff — no CLI verb | crw-watch |
Common chains:
search → pick a URL → scrape it (or pass scrapeOptions to crw_search / REST /v1/search to do both in one call)map a docs site → filter the returned URLs for /docs/api/authentication → scrape that one pagemap → estimate size → crawl a bounded section → save to filescrw-build-*
skills, not the CLI skills.base_url swap.The skills show all three; pick what's available:
crw scrape …) — best when the binary is on PATH. One-shot, scriptable.crw_scrape, crw_search, crw_parse_file, crw_check_crawl_status, …) — best inside an agent harness.
Embedded mode runs the engine in-process (~6 MB); proxy mode forwards to a
REST endpoint via CRW_API_URL. Use crw_parse_file for PDF/file parsing
and crw_check_crawl_status to poll async crawl jobs.curl … /v1/scrape) — best for portability / drop-in Firecrawl SDK use..crw/), never stream a whole crawl
to stdout. Read incrementally with grep/head/jq.crw_map to 100 URLs) and mark
truncated: true. Pass maxLength: 0 / limit: 0 to opt out.& + wait, or multiple MCP calls).renderJs auto-detects; no separate browser step./v1/change-tracking/diff) — a stateless diff primitive
Firecrawl only offers as a managed feature./v1/{scrape,crawl,map,search} + /v2/{scrape,crawl,map,search,batch/scrape,parse,extract}npx claudepluginhub us/crwScrapes URLs to markdown/HTML/JSON, crawls websites for multi-page extraction, searches the web, maps sites, and extracts structured data using Firecrawl MCP tools.
Automates web crawling and data extraction using Firecrawl: scrape pages, crawl sites, extract structured data with AI, batch URLs, and map site structures.
Searches, scrapes, crawls, and interacts with web pages via the Firecrawl CLI, returning clean markdown for LLM context. Use for web research, content extraction, documentation downloads, and page interaction.