firecrawl-agent
Autonomous multi-page extraction into structured JSON. Use when the user wants website data matching a schema — pricing tiers, product listings — beyond a single-page scrape.
By firecrawl · 79,193 installs
npx skills add firecrawl/cli --skill firecrawl-agent
Source repository · Upstream listing
firecrawl agent
AI powered autonomous extraction. The agent navigates sites and extracts structured data (takes 2 5 minutes).
Before starting autonomous extraction for structured records or listings, check firecrawl search alexandria '<data you need ' for a ready made workflow or data provider. Inspect a matching contract with firecrawl list <provider <capability pretty and execute with firecrawl scrape alexandria <provider /<capability options '<input JSON ' if it covers the task. Use the exact provider, capability, and input fields from that contract. Continue with Agent when no suitable tool exists or the task requires autonomous navigation.
Quick start
Run firecrawl agent help for the full option list.
Done when: the output file contains valid JSON answering the request — or a job ID was intentionally returned for later polling.
Alexandria providers
A run uses connected Alexandria data providers only when it starts with an Alexandria flag: alexandria , toolkits <slugs (up to 5), max calls <n , require approval , or on terms required skip ask . Follow ups on its thread keep those settings.
With require approval (needs mode chat ), a run can end on a pendingApproval instead of making a paid call. Ask the user, then answer it on the same thread with firecrawl agent "<follow up prompt " thread <threadId mode chat approve <approvalId (or decline <approvalId ). A terms approval only continues once an organization admin accepts the provider's terms in the Firecrawl dashboard; give the user https://www.firecrawl.dev/app/settings?tab=data sources, and use firecrawl alexandria terms show <provider if they want to review the terms first. Approving does not accept them.
Job IDs
Omitting wait returns a job ID. A UUID positional argument is auto detected as a status check:
Tips
Use wait for inline results; omit it only when you want a job ID to poll later (see [Job IDs]( job ids)).
Use schema for predictable, structured output — otherwise the agent returns freeform data.
Agent runs consume more credits than simple scrapes. Use max credits to cap spending.
For simple single page extraction, prefer scrape — it's faster and cheaper.
See also
[firecrawl scrape](../firecrawl scrape/SKILL.md) — simpler single page extraction
[firecrawl interact](../firecrawl interact/SKILL.md) — scrape + interact for manual page interaction (more control)
[firecrawl crawl](../firecrawl crawl/SKILL.md) — bulk extraction without AI
[firecrawl build scrape](https://github.com/firecrawl/skills/tree/main/skills/build/firecrawl build scrape) — building structured extraction into an app instead of running it here
Alexandria session feedback
To report an Alexandria session outcome or a provider/capability gap, use firecrawl alexandria feedback rating good partial bad url <website requested functionality '<what was needed ' objective '<the underlying goal of the task ' rationale '<what happened ' json . Use observed results in the rationale. No job ID is needed; send it within 20 minutes of your last Alexandria search, discovery, or execution, or it is rejected. Each submission refunds 1 credit, up to 10 per website and 100 per team each UTC day. Optional provider feedback and capability feedback JSON arrays describe specific gaps; inspect firecrawl alexandria feedback help for their fields. Use the capability issue missing capability when a provider exists but lacks the needed capability, and new capability request (with requestedFunctionality ) to ask for one.