Firecrawl
pilotctl appstore install io.pilot.firecrawlAbout Firecrawl
Firecrawl turns any website into clean, LLM-ready data. This app exposes the complete Firecrawl v2 API — all 50 operations — as Pilot app-store methods, generated 1:1 from Firecrawl's published OpenAPI spec.
You do not need a Firecrawl account, an API key, an inbox, or a browser. The app is keyless: Pilot's broker verifies your agent identity, meters your usage, and authenticates upstream on your behalf. Install and call.
What you get
- Scrape — one URL to clean markdown, HTML, links, screenshots, or schema-shaped JSON. Handles JS-heavy pages, PDFs and Office documents, geo/proxy emulation, ad-blocking, and PII redaction. - Search — web, news, and image search with query-relevant highlights, domain and time filters, and optional full scraping of every result in the same call. - Map — enumerate every URL on a domain in about a second. The cheap way to scope a crawl before you pay for one. - Crawl — async whole-site extraction with include/exclude path regexes, depth and page limits, subdomain and external-link control, robots.txt handling, and webhooks. Describe the crawl in plain English and preview the generated options for free. - Batch scrape — many known URLs in one job, with per-URL error reporting. - Extract — LLM-powered structured extraction across many pages against your JSON Schema, optionally with web search and source citations. - Agent — autonomous web research. Give a prompt and a credit ceiling; the agent decides where to go and returns structured data. - Interact — drive a real browser with Playwright or natural language, either bound to a scrape job or as a standalone session with persistent profile storage. - Monitor — recurring checks on pages, whole sites, or web-wide searches, with an AI judge that filters noise against a plain-language goal, and webhook/email/Slack alerts. - Research index — search scientific papers, read their full-text passages, expand to related work, and search GitHub issues, PRs, and READMEs. - Support — firecrawl.ask diagnoses a failing job from your account's logs, and firecrawl.docs_search answers Firecrawl questions with citations. - Usage — credits, tokens, queue depth, and recent activity, so an agent can check cost and capacity before committing to an expensive call.
Start with firecrawl.help — it returns every method with its full parameter set, latency class, and measured roundtrip.
Cost control. firecrawl.crawl takes limit and firecrawl.agent takes maxCredits; both default high. Set them. firecrawl.map and firecrawl.crawl_params_preview are the cheap ways to scope work before you spend. Check firecrawl.credit_usage and firecrawl.balance before a large job.
Not exposed: POST /v2/parse (upload a local file for parsing) takes multipart/form-data, which the JSON-in/JSON-out app-store IPC contract cannot express. Use firecrawl.scrape on a public document URL instead — it parses PDF, DOCX, XLSX and friends natively.
Methods · 51
50 methods work on the free plan. The 1 below the divider need an account upgrade (paid plan, invite, or a verified custom domain).
firecrawl.scrapefirecrawl.scrape_statusfirecrawl.scrape_interactfirecrawl.scrape_interact_stopfirecrawl.searchfirecrawl.search_feedbackfirecrawl.mapfirecrawl.crawlfirecrawl.crawl_statusfirecrawl.crawl_cancelfirecrawl.crawl_errorsfirecrawl.crawl_activefirecrawl.crawl_params_previewfirecrawl.batch_scrapefirecrawl.batch_scrape_statusfirecrawl.batch_scrape_cancelfirecrawl.batch_scrape_errorsfirecrawl.extractfirecrawl.extract_statusfirecrawl.agentfirecrawl.agent_statusfirecrawl.agent_cancelfirecrawl.interact_createfirecrawl.interact_listfirecrawl.interact_executefirecrawl.interact_deletefirecrawl.monitor_createfirecrawl.monitor_listfirecrawl.monitor_getfirecrawl.monitor_updatefirecrawl.monitor_deletefirecrawl.monitor_runfirecrawl.monitor_checksfirecrawl.monitor_checkfirecrawl.research_papersfirecrawl.research_paperfirecrawl.research_relatedfirecrawl.research_githubfirecrawl.askfirecrawl.docs_searchfirecrawl.feedbackfirecrawl.credit_usagefirecrawl.credit_usage_historicalfirecrawl.token_usagefirecrawl.token_usage_historicalfirecrawl.queue_statusfirecrawl.activityfirecrawl.threat_protectionfirecrawl.balancefirecrawl.helpfirecrawl.threat_protection_updateupgradeFull usage demo
When you need content from the live web: read a page as clean markdown, search the web, enumerate a site's URLs, crawl a whole domain, or extract structured data from pages.
pilotctl appstore call io.pilot.firecrawl firecrawl.scrape '{"url":"https://example.com"}'{"success":true,"data":{"markdown":"# Example Domain\n\nThis domain is for use in documentation examples...","metadata":{"title":"Example Domain","creditsUsed":1}}}Worked examples
pilotctl appstore call io.pilot.firecrawl firecrawl.balance '{}'{"credits_remaining":1000,"credits_seed":1000,"scope":"per-pilot-user"}pilotctl appstore call io.pilot.firecrawl firecrawl.search '{"query":"open source web crawlers","limit":3}'{"success":true,"data":{"web":[{"url":"https://...","title":"...","description":"..."}]},"id":"019fc9b8-..."}pilotctl appstore call io.pilot.firecrawl firecrawl.map '{"url":"https://docs.firecrawl.dev","limit":50}'{"success":true,"links":[{"url":"https://docs.firecrawl.dev/...","title":"..."}]}Always map before a crawl: crawl defaults to 10000 pages.
pilotctl appstore call io.pilot.firecrawl firecrawl.crawl '{"url":"https://docs.firecrawl.dev","limit":10}'{"success":true,"id":"a1b2c3d4-...","url":"https://api.firecrawl.dev/v2/crawl/a1b2c3d4-..."}SET limit — it defaults to 10000 pages.
pilotctl appstore call io.pilot.firecrawl firecrawl.crawl_status '{"id":"a1b2c3d4-..."}'{"status":"completed","total":10,"completed":10,"creditsUsed":10,"data":[{"markdown":"...","metadata":{}}]}What it costs
| Operation | Price | Notes |
|---|---|---|
scrape / map / docs_search | 1 credit | per call |
search | 2 credits | per query |
ask | 3 credits | per diagnosis |
interact_create / monitor_create | 5 credits | per session or monitor |
crawl / batch_scrape / extract | 20 credits | charged when the job is accepted; a large crawl costs more as it runs |
agent | 50 credits | cap it with maxCredits |
all *_status, *_errors, list and usage reads | 0 credits | reads are free |
This demo spends 24 of your 1000 credits (quickstart scrape 1 + search 2 + map 1 + crawl 20; both reads are free).
pilotctl appstore call io.pilot.firecrawl firecrawl.balance '{}'Good to know
- You get 1000 credits and 2 concurrent calls. Check firecrawl.balance before a big job.
- 429 means you already have 2 calls in flight — wait, or free a slot. Browser/interact sessions hold one until stopped.
- crawl defaults to limit 10000 and agent to maxCredits 2500 — always set them.
- crawl/batch_scrape/extract/agent are async: they return a job id, poll the matching *_status.
- 404 on someone else's job id is intentional — jobs are isolated per Pilot user.
- firecrawl.parse is not exposed (multipart upload); scrape a public PDF/DOCX URL instead.
Next
io.pilot.firecrawl firecrawl.help '{}'
What’s New
- Released v0.1.0