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_KEY

Preference and failover. backends is an ordered list — the first whose key resolves is the default, and a failing backend falls over to the next. List Firecrawl alongside Exa, Parallel, or Tavily to chain them.

Use 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

How is this guide?

On this page