Documentation Index
Fetch the complete documentation index at: https://firecrawl-docs-improve-developers-mcp-value-props.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
npm install @mendable/firecrawl-js
Ajoutez votre clé API dans .env :
FIRECRAWL_API_KEY=fc-YOUR-API-KEY
Créez src/mastra/tools/firecrawl.ts pour exposer la recherche et le scraping comme outils Mastra :
import Firecrawl from "@mendable/firecrawl-js";
import { createTool } from "@mastra/core/tools";
import { z } from "zod";
const firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY! });
export const firecrawlSearch = createTool({
id: "firecrawl-search",
description: "Search the web and return top results.",
inputSchema: z.object({ query: z.string().min(1) }),
outputSchema: z.object({
results: z.array(
z.object({
title: z.string().nullable(),
url: z.string(),
}),
),
}),
execute: async ({ query }) => {
const results = await firecrawl.search(query, { limit: 3 });
return {
results: (results.web ?? []).map((item) => ({
title: item.title ?? null,
url: item.url,
})),
};
},
});
export const firecrawlScrape = createTool({
id: "firecrawl-scrape",
description: "Scrape a URL and return markdown content.",
inputSchema: z.object({ url: z.string().url() }),
outputSchema: z.object({ markdown: z.string() }),
execute: async ({ url }) => {
const result = await firecrawl.scrape(url, {
formats: ["markdown"],
onlyMainContent: true,
});
return { markdown: result.markdown ?? "" };
},
});
Créez src/mastra/agents/web-agent.ts et ajoutez-y les outils Firecrawl :
import { Agent } from "@mastra/core/agent";
import { firecrawlSearch, firecrawlScrape } from "../tools/firecrawl";
export const webAgent = new Agent({
id: "web-agent",
name: "Web Agent",
instructions:
"Use Firecrawl tools to search and scrape web pages, then summarize the results.",
model: "openai/gpt-5.4",
tools: { firecrawlSearch, firecrawlScrape },
});
Enregistrez l’agent dans votre instance Mastra, dans src/mastra/index.ts :
import { Mastra } from "@mastra/core";
import { webAgent } from "./agents/web-agent";
export const mastra = new Mastra({
agents: { webAgent },
});
Lancez le serveur de développement et ouvrez Mastra Studio :
Ouvrez le Web Agent et essayez des prompts comme :
- “Trouvez le dernier changelog de Firecrawl et résumez la dernière mise à jour.”
- “Recherchez la tarification de Firecrawl et extrayez les différents niveaux d’offre.”
Si vous exécutez Firecrawl en local, définissez FIRECRAWL_API_URL et passez apiUrl au client :
const firecrawl = new Firecrawl({
apiKey: process.env.FIRECRAWL_API_KEY!,
apiUrl: process.env.FIRECRAWL_API_URL,
});
Docs scraping
Toutes les options de scraping, y compris les formats, les actions et les proxies
Docs recherche
Recherchez sur le web et obtenez le contenu complet de la page
Docs Agent
Laissez un agent piloter Firecrawl de bout en bout
Référence SDK Node
Référence complète du SDK avec crawl, cartographie, extraction par lot, etc.