Firecrawl
Use Firecrawl's search API as a BitRouter web_search backend — bring a Firecrawl key and any routed model can search the web.
Firecrawl turns the web into LLM-ready data — its search endpoint returns ranked results with a description and, when asked, the page as markdown. BitRouter speaks it natively as a backend for the built-in web search tool.
Get a key
Create an API key in the Firecrawl dashboard and export it:
export FIRECRAWL_API_KEY=...Add Firecrawl to BitRouter
Declare a firecrawl backend under server_tools.web_search. The key resolves from an explicit api_key (which supports ${VAR}) or, when omitted, the conventional FIRECRAWL_API_KEY:
# bitrouter.yaml
server_tools:
web_search:
backends:
- kind: firecrawl # key from api_key or FIRECRAWL_API_KEYUse it
A request turns the tool on by declaring it; pin Firecrawl with args.backend:
{ "tools": [ { "type": "bitrouter:web_search", "args": { "backend": "firecrawl" } } ] }The model then calls web_search with a query; BitRouter runs it against Firecrawl and feeds the results back inside the tool loop. Firecrawl fills title, snippet (description), and — uniquely among the search backends — content (markdown) on each result.
Learn more
- Web search — the result schema, per-request
max_results, and loop bounds. - Firecrawl — documentation
How is this guide?