Skip to main content

Prerequisites

Install the SDK

Set your API key

Add your API key to .env:

Build the Firecrawl tools

Create src/mastra/tools/firecrawl.ts to expose search and scrape as Mastra tools:

Create the agent

Create src/mastra/agents/web-agent.ts and give it the Firecrawl tools:

Register the agent

Register the agent on your Mastra instance in src/mastra/index.ts:

Test in Studio

Run the dev server and open Mastra Studio at http://localhost:4111:
Open the Web Agent and try prompts like:
  • “Find the latest Firecrawl changelog and summarize the last release.”
  • “Search for Firecrawl pricing and extract the plan tiers.”

Give the agent a hosted browser

For pages that need clicks, typing, or scrolling, Mastra’s @mastra/browser-firecrawl package runs the agent’s browser tools in a Firecrawl browser session, so you don’t need a local Chromium install.
Pin agent-browser to 0.19.0. Later releases ship only the CLI, so @mastra/browser-firecrawl fails to import with Cannot find package .../agent-browser/index.js.
Create src/mastra/agents/browser-agent.ts, then register browserAgent on your Mastra instance the same way as webAgent:
Each conversation thread gets its own browser session by default. See the Mastra Firecrawl browser docs for shared sessions, session timeouts, and saved profiles.

Self-hosted Firecrawl

If you run Firecrawl yourself, add FIRECRAWL_API_URL to .env. The SDK reads it from the environment, so the tools above need no changes:

Next steps

Scrape docs

All scrape options including formats, actions, and proxies

Search docs

Search the web and get full page content

Agent docs

Let an agent drive Firecrawl end to end

Node SDK reference

Full SDK reference with crawl, map, batch scrape, and more