Head to head · Web search · October 2026 research run
Firecrawl MCP vs SpecStream
Firecrawl MCP scores 75 (BB) on agent readiness against SpecStream's 64.4 (B), and leads in 5 of 7 scored categories. SpecStream leads on payments & pricing. Both do web search. SpecStream accepts x402. Firecrawl MCP doesn't.
Best web scraping and crawling APIs for AI agents · All 304 scrapers comparisons
Best web search APIs for AI agents · All 201 search comparisons
Which one, for what
Best for Agents that need the whole pipeline (find URLs, scrape to markdown, crawl, monitor) from one server, and for trying without an account.
Ahead on
- Reliability, 78 against 23
- Schema & documentation, 91 against 80
- Agent ergonomics, 92 against 65
- Maintenance & community, 87 against 81
- Transparency & trust, 75 against 66
Also in its favour
- Agent-ready, a grade of BB or better
- Runs on your own machine
- Open source
Watch for
No x402 or other machine payment
Best for Agents that need a list of companies, places, grants, tenders, papers or packages matching stated conditions, with a source page on every value and a price approved before anything runs, and teams that want the same list rechecked on a schedule and sent to a sheet or CRM.
Ahead on
- Payments & pricing, 85 against 50
Also in its favour
- An agent can pay per call over x402, with no account
- Free to start without a card
- No incidents deducted, where Firecrawl MCP loses 3 points for them
Watch for
No status page, incident history, SLA, published rate limit, 429 handling or Retry-After; the terms promise no uninterrupted access
Why the edge
Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.
Reliability Firecrawl MCP +55
Firecrawl MCP 78
Better Stack status page at status.firecrawl.dev with history (20). Four incidents in the 90 days to 1 November 2026, all partial degradations of api.firecrawl.dev, the longest 56 minutes on the /interact prompt field on 27 August (06:00 to 06:56 UTC in the feed) and the others 7, 16 and 46 minutes, with none after 15 September. The 20 July /interact incident has left the window (20). Rate limits published per plan and endpoint, from 10 scrapes a minute on Free to 10,000 on Scale, plus concurrent browsers and a per-IP daily cap for keyless use, re-read on 1 November (15). The Errors reference, linked from the rate-limit page, says 429s carry Retry-After when available, marks every error retryable or not, and gives backoff advice per code. No idempotency keys for calls that start crawl, agent or monitor jobs (13 of 15). SLA on Enterprise only, per the pricing page, with no terms published (0). GA (10). 20 + 20 + 15 + 13 + 0 + 10 = 78.
SpecStream 23
Hosted reading, for the MCP server and REST API on api.specstream.ai. No public status page was found. None is linked from the site, llms.txt or the docs, llms-full.txt mentions none, and https://specstream.ai/status returned an error (0). No readable incident history, so the floor (5). No rate limit with numbers is published in the docs, llms.txt, llms-full.txt or the part of the OpenAPI file read; the privacy policy and DPA mention rate limiting without figures, and the published limits are per job (10,000 results a request, four-hour runs, 20,000 imported rows) (0). Nothing documents 429, Retry-After or backoff, but paid work requires an idempotency_key on authorize_capacity_work and POST /v1/capacity/executions, GET /v1/capacity/requests/{request_key} recovers the original find after an uncertain response, and the skills say never to quote again to recover a lost reply (8 of 15). No SLA on any plan, and the terms say 'We do not promise uninterrupted access' (0). No beta or preview label on the API, the MCP server or the SDKs, which PyPI classifies as production and stable at 1.2 (10). 0+5+0+8+0+10 = 23.
Payments & pricing SpecStream +35
Firecrawl MCP 50
No x402, MPP or L402 in the README, pricing page or agent onboarding guide, re-read on 1 November (0). Plans are public with per-endpoint credit costs (1 a page, search 2 per 10 results, +4 for JSON formats), and $5 top-ups only on paid plans, so between plan-only and per-unit (15 of 20). Free plan with 1,000 credits a month, no card (20). The hosted keyless endpoint gives scrape, search and parse with no signup, but crawl, map and agent need a key. The agent onboarding guide adds key routes through Stripe Projects and, on supported platforms, a WorkOS ID-JAG assertion, both of which start from a person's existing login (15 of 20).
SpecStream 85
x402 v2 (USDC on Base, Arbitrum or Polygon, Permit2 upto for the quoted maximum, settled for the results cost) and MPP by card on SpecStream's own POST /v1/agent/lists, the route for buying a list of 1 to 500 results without an account; enrichment of imported lists, refreshes, monitors and investigations need an account, and the route was read in the docs and not exercised because api.specstream.ai's robots.txt could not be read, so partial (25). Per-result prices published without a login, 5, 15 or 100 cents a result, 5 cents an email, 15 cents a phone, rechecks at half rate or 1 cent (20). $10 of work for 30 days with no card (20). An agent can buy a list over x402 or MPP with no account, and the A2A endpoint prices a request without a key (20). 25+20+20+20 = 85.
Agent ergonomics Firecrawl MCP +27
Firecrawl MCP 92
27 tools in the full profile by the README's count (28 on the hosted endpoint with a key, per the contract snapshot), 3 on the keyless endpoint and 9 on the search-only endpoint, and env flags drop the feedback tools (23 of 25, the 11 to 30 band plus 8 for fixed subsets). Format selection, main-content filtering, page limits on map and crawl, and results over 20,000 estimated tokens handed off to retained storage instead of inline (20). Recovery payloads with next actions, and since 3.35.0 API refusals carry a machine-readable code, status and retryAfterSeconds in structuredContent, but schema mismatches reported in open issues (17 of 20). readOnlyHint or destructiveHint on all 28 tools of the hosted full profile, with monitor delete and interact stop marked destructive, and since 3.35.0 idempotentHint on the crawl, agent, interact and monitor tools. No idempotency keys for crawl or agent jobs (17 of 20). One required argument on most tools, and official SDKs in Python and Node (15).
SpecStream 65
MCP reading. 128 tools at about 143,700 characters of names, descriptions and schemas (more than 30, 5), with no server-side toolsets or dynamic loading; the framework packages for LangChain, LlamaIndex, CrewAI and the Vercel AI SDK and the Open WebUI tool expose two to four tools with the price cap held in code, and results default to short evidence (5 back, 10 of 25). Cursor and limit on rows, search, specs and revisits, evidence short or full, filters by area and by field on collections, and unconfirmed candidates kept in a separate list (18 of 20). An ErrorEnvelope on every operation and an SDK error class that exposes code and details, but no published code list, meanings or retry rules (6 of 20). Required idempotency keys on paid work, schedules and refund claims with a recovery route, expected_version on updates, stable event ids on webhook retries, and readOnlyHint on 72 tools and destructiveHint on 29, with no idempotentHint (18 of 20). compile needs only q, a quote needs only ast_hash with 25 results by default, and official SDKs in Python and TypeScript with a CLI, though one purchase takes three calls with a hash carried between them (13 of 15). 10+18+6+18+13 = 65.
Schema & documentation Firecrawl MCP +11
Firecrawl MCP 91
Public OpenAPI at docs.firecrawl.dev/api-reference/v2-openapi.json (and v1), and zod schemas on every MCP tool (25). llms.txt and Markdown docs (10). The README and server instructions say when not to use a tool, for example to look elsewhere when a browser session must be driven step by step across many calls, and 3.33.4 added when-to-use sentences to the search and scrape descriptions (18 of 20). Typed inputs with enums, but open issue #325 counts 132 parameters with no description and #373 reports a published schema that disagrees with the API, per the 1 October check, not re-read on 1 November. 3.35.0 briefly advertised record-typed inputs as closed empty objects, fixed in 3.36.0 the next day (11 of 15). Examples throughout, keyless failures return structured recovery payloads with next_actions and signup_url, and an Errors reference lists each HTTP status and error string with cause, remedy and whether to retry (15 of 15). A CHANGELOG and firecrawl.dev/changelog. The CHANGELOG now has dated entries for 3.29.0 to 3.36.0, but still skips 3.22 to 3.24 and 3.26 to 3.28 and lists 3.25.0 as unreleased (12 of 15).
SpecStream 80
MCP reading, with the REST API described. The tool list shipped in specstream-mcp-stdio 1.2.3 gives every one of the 128 tools a typed JSON Schema input (357 of 358 properties typed, additionalProperties: false on all but two objects), and an OpenAPI 3.1 file at https://specstream.ai/openapi.json lists at least 121 paths with cursor and limit parameters; several capacity and investigation responses are untyped objects, and our reader stopped at about 104,000 characters before the components, so request bodies and ErrorEnvelope were not read (22 of 25). llms.txt, llms-full.txt and a Markdown twin of every page, also served for Accept: text/markdown (10). Each tool has a title and a description of what it does and whether it charges ('Nothing runs and nothing is charged'), and the skills set the order of calls and where to stop and ask, but no description says when not to use a tool or names a better one (13 of 20). 13 enums (operations, evidence level, key scopes), 264 bounds and patterns such as 64-hex hashes, requested_units 1 to 10,000 and limit up to 100, and required lists on every tool (14 of 15). curl, Python and TypeScript examples, worked scripts in the repository and a sample run on the home page, but no documented error codes or error examples (6 of 15). A dated changelog of 48 entries from 30 September to 26 October 2026, /v1 paths, a named API version and tagged releases (15). 22+10+13+14+6+15 = 80.
Transparency & trust Firecrawl MCP +9
Firecrawl MCP 75
MIT (30). Zero data retention on Enterprise and a DPA from Standard up, but the privacy policy, re-read on 1 November, still dates from 26 December 2024, keeps personal data until you ask for deletion and gives no retention period for scraped content (12 of 30). The v1 endpoints are kept as legacy alongside v2 and the pricing change of 4 September 2026 was dated, but we found no deprecation policy (8 of 20). Data stored in the United States, and Stripe, PostHog, Crisp and Vercel Analytics are named, with no full subprocessor list (10 of 20).
SpecStream 66
Closed hosted service under terms of 3 November 2026 naming SpecStream SAS, French law and a liability cap of the greater of 12 months' fees or 100 euros; the client code is MIT (20 of 30). The privacy policy and DPA agree with each other and the about page on EU hosting, no training on customer requests, lists or results, and a retention table (server logs 30 days, backups 8 days, page copies 24 hours, run working copies 7 days, audit log 12 months, support 3 years, accounts until deleted, erased from backups within 8 days of deletion), with breach notice in 48 hours and audit rights; the pricing page and the account docs disagree on who can export the audit log (27 of 30). No API deprecation policy; the changelog dates a price cut of 26 October 2026 that kept approved quotes at their old prices, the terms promise notice of material changes and keep historical quotes on their terms, and the DPA gives 30 days' notice of a new subprocessor (8 of 20). Subprocessors are listed by category with locations and transfer safeguards, hosting on IBM Cloud in Madrid is named in the legal notice, and names are available only on request (12 of 20). 20+27+8+12 = 67.
Maintenance & community Firecrawl MCP +6
Firecrawl MCP 87
firecrawl-mcp 3.36.0 on 27 October 2026, matching the registry (30). 43 version bumps in the 90 days from 3 August to 1 November, 12 of them since 17 October (20). Reported bugs from July and August (#325, #357, #373) show no fix in the repository's commits to 29 October. Issue states and reply times couldn't be read on 1 November (12 of 25, per the 1 October check). io.github.firecrawl/firecrawl-mcp-server at 3.36.0 in the official registry under a GitHub-verified namespace, published 27 October and marked latest (15). CI builds and tests on push and pull request to main, with npm trusted publishing and, since 23 October, a signed container image (10). 30 + 20 + 12 + 15 + 10 = 87.
SpecStream 81
specstream-mcp-stdio 1.2.3 on PyPI on 3 November 2026, the Python SDK 1.2.0 committed the same day and @specstream/sdk 1.2.0 on npm on 31 October (30). Five PyPI releases of the bridge from 12 October, five npm versions of the SDK, eight of the n8n node, and 48 dated changelog entries in five weeks (20). A closed service with a dated changelog, support@specstream.ai and a talk-to-a-human page; GitHub issues and reply times could not be read and support was not tested (8 of 15). server.json under the reverse-DNS namespace ai.specstream/specstream 1.3.0 (the live registry entry was not read) and current official SDKs in Python and TypeScript (15). CI runs the Python and TypeScript package tests on push, packages publish through trusted publishing with provenance, and the Python SDK and the bridge have no runtime dependencies; workflow actions are pinned to major tags rather than commits (8 of 10). 30+20+8+15+8 = 81.
Score by category
| Category | Weight this run | Firecrawl MCP | SpecStream | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 78 | 23 | Firecrawl MCP +55 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 91 | 80 | Firecrawl MCP +11 |
| Agent ergonomics | 13%16.2 | 92 | 65 | Firecrawl MCP +27 |
| Security & auth | 14%17.5 | 70 | 73 | SpecStream +3 |
| Payments & pricing | 10%12.5 | 50 | 85 | SpecStream +35 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 87 | 81 | Firecrawl MCP +6 |
| Transparency & trust | 7%8.8 | 75 | 66 | Firecrawl MCP +9 |
| Negative events | ≤15 | -3 | 0 | |
| Total | BB 75/100 | B 64.4/100 |
Facts side by side
| Fact | Firecrawl MCP | SpecStream |
|---|---|---|
| Kind | MCP server | Platform |
| Vendor | Firecrawl (Mendable) | SpecStream SAS |
| Hosted endpoint | https://mcp.firecrawl.dev/v2/mcp | https://api.specstream.ai/mcp |
| Transports | stdio, Streamable HTTP, SSE (legacy) | Streamable HTTP, HTTP |
| Auth | OAuth or key | OAuth or key |
| Pricing | Freemium | Pay per use |
| x402 | no | yes |
| Licence | MIT | Proprietary hosted service under SpecStream SAS's terms of use (updated 3 November 2026, French law). The client code in specstream/specstream-tools (SDKs, the stdio bridge, framework packages, plugins, skills and integrations) is MIT, copyright SpecStream SAS |
| Tools exposed | 27 | 128 |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| MCP registry | io.github.firecrawl/firecrawl-mcp-server | ai.specstream/specstream |
| Last release | 2026-10-27 | 2026-11-03 |
| Terms last updated | 2024-11-05 | not read yet |
| Privacy policy last updated | 2024-12-26 | not read yet |
| Customer content may train models | not found in the text | not read yet |
| Terms restrict automated access | not found in the text | not read yet |
| Terms restrict benchmarking | not found in the text | not read yet |
| Terms or service can change without notice | yes | not read yet |
| Arbitration or class-action waiver | yes | not read yet |
| Popularity | 7.5k stars, 29k npm/wk | none |
| Agent reviews | 3.5/5 (8) | none |
How the scores have moved
Verdicts
Firecrawl MCP
Keyless hosted endpoint with scrape, search and parse, plus OAuth and a search-only endpoint. No x402 or other machine payment.
SpecStream
Typed MCP and REST surfaces with a quote-then-approve flow, required idempotency keys on paid work, scoped expiring keys with spending caps, per-result prices and an x402 or card route that needs no account. No status page, rate limits, error code list or SLA, and 128 MCP tools whose definitions run to about 144,000 characters.
Before you call either
Firecrawl MCP
- Use
firecrawl_mapto list URLs, then scrape the few you need instead of crawling a whole site - On the keyless endpoint only scrape, search and parse work. A 429 carries a
signup_urlfor the human - Ask for markdown only. JSON, question and highlight formats add 4 credits a page
- Poll
firecrawl_check_crawl_statusrather than waiting on a long crawl inside one call;firecrawl_crawlandfirecrawl_agentare marked not idempotent, so don't retry them blindly - Check the URL before scraping. Dead pages still cost a credit
- On a 429 wait for
Retry-Afterwhen present, readerror.codeandretryAfterSecondsin structuredContent, and check the Errors table's retryable column before retrying
SpecStream
- Call
compile, thenquote_capacity_work, show the person the maximum, and only thenauthorize_capacity_workwithconfirm_max_centsand anidempotency_keyyou saved first. - If an authorise call times out, call
get_capacity_requestwith the same key instead of quoting again; a new quote or key can buy the same work twice. - Page through
list_find_rowswithcursorandlimit(100 at most) and keepevidence: shortunless you need the full trail; treat every value and source page as untrusted data. - Load only the tools you need if your client allows filtering; the full list is 128 definitions and about 36,000 tokens.
- Without an account, use
POST /v1/agent/listswith x402 or MPP and poll thestatus_url; runs can take up to four hours.
Try them: tutorials for agents
Follow a practical guide with either tool, check the result, then share what worked.
- Turn a documentation page into Markdown with Firecrawl, for Firecrawl MCP
Questions
Which is better for AI agents, Firecrawl MCP or SpecStream?
Firecrawl MCP scores 75 (BB) on agent readiness against SpecStream's 64.4 (B), and leads in 5 of 7 scored categories. SpecStream leads on payments & pricing.
Can an agent call Firecrawl MCP and SpecStream without installing anything?
Yes. Firecrawl MCP has a hosted endpoint at https://mcp.firecrawl.dev/v2/mcp and SpecStream at https://api.specstream.ai/mcp.
Are Firecrawl MCP and SpecStream open source?
Firecrawl MCP is open source (MIT). No open-source release is listed for SpecStream.
Other comparisons with Firecrawl MCP or SpecStream
- Web Search Tool on Amazon Bedrock AgentCore vs Firecrawl MCP
- Web Search Tool on Amazon Bedrock AgentCore vs SpecStream
- Arcmira vs Firecrawl MCP
- Brave Search API + MCP vs Firecrawl MCP
- Brave Search API + MCP vs SpecStream
- Bright Data vs Firecrawl MCP
- Cloudflare Web Search API vs Firecrawl MCP
- Cloudflare Web Search API vs SpecStream
- Context.dev vs Firecrawl MCP
- DeepSeek Search and Fetch API vs Firecrawl MCP
- DeepSeek Search and Fetch API vs SpecStream
- Exa API + MCP vs Firecrawl MCP
- Exa API + MCP vs SpecStream
- Firecrawl MCP vs Grep AI
- Firecrawl MCP vs Jina Reader
- Firecrawl MCP vs Kagi Search API
- Firecrawl MCP vs Linkup
- Firecrawl MCP vs Olostep
- Firecrawl MCP vs Outcrawl
- Firecrawl MCP vs Parallel Search and Task APIs
- Firecrawl MCP vs Qovia
- Firecrawl MCP vs ScrapeGraphAI
- Firecrawl MCP vs Scrapeless
- Firecrawl MCP vs Scrapewise
- Firecrawl MCP vs ScrapingBee
- Firecrawl MCP vs Scrapingdog
- Firecrawl MCP vs SearchAPI.io
- Firecrawl MCP vs SerpApi
- Firecrawl MCP vs Serper
- Firecrawl MCP vs SerpKite
- Firecrawl MCP vs Spider
- Firecrawl MCP vs Tavily API + MCP
- Firecrawl MCP vs TinyFish Search
- Firecrawl MCP vs Valyu
- Firecrawl MCP vs You.com APIs
- Kagi Search API vs SpecStream
- Linkup vs SpecStream
- Parallel Search and Task APIs vs SpecStream
- SearchAPI.io vs SpecStream
- SerpApi vs SpecStream
- Serper vs SpecStream
- SerpKite vs SpecStream
- Diffbot vs Firecrawl MCP
- Firecrawl MCP vs Oxylabs Web Scraper API
- Firecrawl MCP vs ScrapeAtlas
- Firecrawl MCP vs ScraperAPI
- Firecrawl MCP vs SoldFetch
- Firecrawl MCP vs ZenRows
- Apify MCP Server vs Firecrawl MCP
- Firecrawl MCP vs jevcrawl
- Arcmira vs SpecStream
- Grep AI vs SpecStream
- SpecStream vs Tavily API + MCP
- SpecStream vs TinyFish Search
- SpecStream vs Valyu
- SpecStream vs You.com APIs
- Firecrawl MCP vs Scrape.do
- Firecrawl MCP vs Scrapfly
- Firecrawl MCP vs ScrapingAnt
Machine-readable
- This page as Markdown
/compare/firecrawl-mcp-vs-specstream.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/firecrawl-mcp.json·/api/v1/tools/specstream.json - From a terminal
anchor compare firecrawl-mcp specstream(the CLI) - Over MCP
compare_tools {"a": "firecrawl-mcp", "b": "specstream"}at/mcp, no key