Agent readiness · firecrawl.dev
2026-08-12 10:37 UTC · formula v9.2 · 5.3s
A recaptcha challenge sits between an agent and an account it was ready to create.
https://www.firecrawl.dev/signin loads recaptcha. There is no version of that an agent solves.
- A · Discovery
- 5/5
- B · Agent entry
- 4/4
- C · Registration
- 1/2
- D · Provisioning
- 2/3
- E · Integration
- 2/2
of the 16 points that apply to you and we could measure · 1 of 17 were not scored
You 14 · category median 12.5 · best zenrows.com 13 · 15 deterministic HTTP checks, published formula
Fix this first
This is the whole list: everything we could measure and you do not pass. Another 1 point sits behind checks we could not evaluate on your domain, and each of those lines below says what would make it measurable.
- 1No CAPTCHA in the signup HTMLan afternoon · +1
Trigger recaptcha on a risk signal instead of on every signup, or open an API path to an account. A CAPTCHA is a hard stop, not a speed bump.
- 2Programmatic key provisioningan afternoon · +1
Document how a key is created without opening a dashboard: management API, service account or CLI. If no such path exists, that gap is the finding, not the docs.
Take it with you
3 of the checks an agent depends on, firecrawl.dev does not pass.
Send yourself the list above with the checks that cost the most, and a permanent link. Whoever owns the fix is usually not the person who ran the scan.
One email with the report, and one follow-up asking what you did with it. No newsletter, no sequence. Delete on request at hello@letagentsin.com.
None of this tells you whether an agent picked you
Everything above is a file an agent could read. Whether one actually chose you is a different measurement, and we have not run it on firecrawl.dev. What we have run it on is a rich text editor vendor: six agents, one brief, six isolated copies of a real codebase. All six picked the same competitor, and the vendor being studied was never named, not even on a rejection list, while the runs named and dismissed ten alternatives between them. In an earlier round, run before we isolated the copies, it was named twice and struck off both times in four words: Fully commercial, licence key required. That study is about them, not about you. It is here because it is the difference between a file and a decision.
Against browser and scraping infrastructure
You are 3 of 6 in a category where a developer is trying to drive a real browser or read a page you do not own.
- 1zenrows.com13/14
- 2browserbase.com14/16
- 3firecrawl.devyou14/16
- 4apify.com12/15
- 5browserless.io12/16
- 6scrapingbee.com6/14
Where competitors pass and firecrawl.dev does not
- Programmatic key provisioningbrowserbase.com · browserless.io
Only domains we have actually scanned appear here, so the ranking is a floor: a competitor missing from the list has not been measured, not beaten.
By stage
Every check
Each line is one HTTP observation with a published rule, so you can rerun any of them yourself. Most are the same tomorrow if you are: the two that are not are the bot gate and the pricing page, which answer inconsistently on their own, which is why those run more than once and say so when the tries disagreed. PASS and PART are counted. UNMEASURED means we could not evaluate it, N/A means it does not apply to a product like yours, and neither is in the score or its denominator. See the formula
A · Discovery
- PASSAnswers an agent user-agentAnswered 200 to LetAgentsIn/1.0 (+https://letagentsin.com/methodology)
- PASSllms.txt publishedllms.txt and llms-full.txt present at https://www.firecrawl.dev/llms.txt and https://docs.firecrawl.dev/llms.txt and https://docs.firecrawl.dev/llms-full.txt, and the 12 links we sampled across both files all answer
- PASSDocs readable without JavaScript14,017 characters of text without JS
- PASSOn-demand agents not blockedNo on-demand agent is blocked
- N/APaths robots.txt points at answerrobots.txt names no concrete path, only patterns or nothing, so there is no claim to check
- PASSNo punishing crawl delayNo Crawl-delay applies to the agents we check
B · Agent entry
- PASSAgent entry pointFound: https://www.firecrawl.dev/agents.md
- PASSOAuth dynamic client registrationregistration_endpoint published, but none of the 2 advertised grants (authorization_code, refresh_token) finishes without a person at a browser
- PASSMCP surfaceLive MCP endpoint at https://mcp.firecrawl.dev/mcp, answers JSON
C · Registration
- FAILNo CAPTCHA in the signup HTMLrecaptcha appears in the signup page's server HTMLA CAPTCHA is a hard stop. Permissions after signup beat a gate before it.
- PASSSignup reachable without a browserForm renders in server HTML at https://www.firecrawl.dev/signin
D · Provisioning
- PARTProgrammatic key provisioning1 of 7 provisioning phrases across the 4 documents we read: "create an api key (or api token, access token, personal access token, service account, auth token, secret key), next to something programmatic"Documented key creation is the difference between a two-minute integration and a support ticket.
- PASSFree tier or no-card trial stated in textFree tier or no-card signals at https://www.firecrawl.dev/pricing: "no card", "free tier", "Free Plan"
E · Integration
- PASSTyped SDK on the registryfirecrawl@4.32.0 ships types
- PASSMachine-readable API descriptionDocs serve markdown to machines, at https://docs.firecrawl.dev/introduction
What we discovered on the way
- Docs
- https://docs.firecrawl.dev/introduction · linked from the site
- Pricing
- https://www.firecrawl.dev/pricing · linked from the site
- Signup
- https://www.firecrawl.dev/signin · from your llms.txt
- npm package
- firecrawl
- GitHub
- firecrawl/firecrawl
- Package licence
- MIT
- Crawl-delay
- none
- Content-Signal
- ai-train=yes, search=yes, ai-input=yes
- Blocked on-demand agents
- none