Firecrawl
Firecrawl
Section titled “Firecrawl”OpenClaw can use Firecrawl in three ways:
- as the
web_searchprovider - as explicit plugin tools:
firecrawl_searchandfirecrawl_scrape - as a fallback extractor for
web_fetch
It is a hosted extraction/search service that supports bot circumvention and caching, which helps with JS-heavy sites or pages that block plain HTTP fetches.
Get an API key
Section titled “Get an API key”- Create a Firecrawl account and generate an API key.
- Store it in config or set
FIRECRAWL_API_KEYin the gateway environment.
Configure Firecrawl search
Section titled “Configure Firecrawl search”{ tools: { web: { search: { provider: "firecrawl", }, }, }, plugins: { entries: { firecrawl: { enabled: true, config: { webSearch: { apiKey: "FIRECRAWL_API_KEY_HERE", baseUrl: "https://api.firecrawl.dev", }, }, }, }, },}Notes:
- Choosing Firecrawl in onboarding or
openclaw configure --section webenables the bundled Firecrawl plugin automatically. web_searchwith Firecrawl supportsqueryandcount.- For Firecrawl-specific controls like
sources,categories, or result scraping, usefirecrawl_search.
Configure Firecrawl scrape + web_fetch fallback
Section titled “Configure Firecrawl scrape + web_fetch fallback”{ plugins: { entries: { firecrawl: { enabled: true, config: { webFetch: { apiKey: "FIRECRAWL_API_KEY_HERE", baseUrl: "https://api.firecrawl.dev", onlyMainContent: true, maxAgeMs: 172800000, timeoutSeconds: 60, }, }, }, }, },}Notes:
firecrawl.enableddefaults totrueunless explicitly set tofalse.- Firecrawl fallback attempts run only when an API key is available (
plugins.entries.firecrawl.config.webFetch.apiKeyorFIRECRAWL_API_KEY). maxAgeMscontrols how old cached results can be (ms). Default is 2 days.- Legacy
tools.web.fetch.firecrawl.*config is auto-migrated byopenclaw doctor --fix.
firecrawl_scrape reuses the same plugins.entries.firecrawl.config.webFetch.* settings and env vars.
Firecrawl plugin tools
Section titled “Firecrawl plugin tools”firecrawl_search
Section titled “firecrawl_search”Use this when you want Firecrawl-specific search controls instead of generic web_search.
Core parameters:
querycountsourcescategoriesscrapeResultstimeoutSeconds
firecrawl_scrape
Section titled “firecrawl_scrape”Use this for JS-heavy or bot-protected pages where plain web_fetch is weak.
Core parameters:
urlextractModemaxCharsonlyMainContentmaxAgeMsproxystoreInCachetimeoutSeconds
Stealth / bot circumvention
Section titled “Stealth / bot circumvention”Firecrawl exposes a proxy mode parameter for bot circumvention (basic, stealth, or auto).
OpenClaw always uses proxy: "auto" plus storeInCache: true for Firecrawl requests.
If proxy is omitted, Firecrawl defaults to auto. auto retries with stealth proxies if a basic attempt fails, which may use more credits
than basic-only scraping.
How web_fetch uses Firecrawl
Section titled “How web_fetch uses Firecrawl”web_fetch extraction order:
- Readability (local)
- Firecrawl (if configured)
- Basic HTML cleanup (last fallback)
Related
Section titled “Related”- Web Search overview — all providers and auto-detection
- Web Fetch — web_fetch tool with Firecrawl fallback
- Tavily — search + extract tools