Head to head · Web search · October 2026 research run

Brave Search API + MCP vs SpecStream

SpecStream scores 64.4 (B) on agent readiness against Brave Search API + MCP's 62.9 (B), and leads in 4 of 7 scored categories. Brave Search API + MCP leads on reliability, agent ergonomics and transparency & trust. Both do web search. SpecStream accepts x402. Brave Search API + MCP doesn't.

Best web search APIs for AI agents · All 201 search comparisons

Which one, for what

Brave Search API + MCP B

Best for Agents that want an independent, non-Google index at a flat price, or that want page text in one call through LLM Context.

Ahead on

  • Reliability, 80 against 23
  • Agent ergonomics, 72 against 65
  • Transparency & trust, 81 against 66

Also in its favour

  • Runs on your own machine
  • Open source

Watch for

The x402 pay-per-call proxy answered 404 on 1 November 2026, and its guide is gone from the docs

SpecStream B

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

  • Schema & documentation, 80 against 72
  • Security & auth, 73 against 58
  • Payments & pricing, 85 against 20

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 Brave Search API + 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.

Payments & pricing SpecStream +65

Brave Search API + MCP 20

No machine payment on 1 November. The x402 proxy at search.agent.s.brave.app answers 404 on its root, llms.txt, OpenAPI file and the web search and LLM Context paths it sold on 1 October, the agent payments guide answers 404, and neither llms.txt nor brave.com/search/api mentions x402 (0). $5 per 1,000 searches and $4 per 1,000 Answers requests plus tokens, published without login (20). The $5 monthly credit needs a card on file, which brave.com says is to prevent abuse (0). A person signs up and adds a card before getting a key, so no autonomous route remains (0). 0+20+0+0 = 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.

Reliability Brave Search API + MCP +57

Brave Search API + MCP 80

status.brave.app (Better Stack) lists a Brave Search API component monitoring api.search.brave.com, showing 100% uptime with every two-day mark from 6 May to 1 November 2026 operational, and a Search API Dashboard monitor at 99.996%. The 1 October note read the page as unmonitored, but its marks go back to May (20). No incident in the 90 days from 3 August on the page or its feed, and the docs' own status log still ends on 27 March 2025, so a clean record on a readable page (20). Rate limits published per plan, 50 QPS Search, 2 QPS Answers, 100 QPS Spellcheck and Autosuggest, in a 1-second sliding window, per the 1 October check (15). 429 on overrun, X-RateLimit-Reset in seconds and exponential backoff guidance. Searches are reads, so no idempotency keys are needed (15). No SLA on any self-serve plan (0). GA (10). 20+20+15+15+0+10 = 80.

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.

Security & auth SpecStream +15

Brave Search API + MCP 58

Plain API keys in the X-Subscription-Token header. Several keys per account, revocable from the dashboard, with rotation advice, but no scopes (20). Read-only by nature, with tool allow and deny lists in the MCP server. The HTTP transport binds to 127.0.0.1 and checks Origin (18). Results are untrusted web text and LLM Context returns page content, and we found no prompt-injection guidance in the API docs or the MCP README (0). No per-call audit log found. Rate-limit headers show quota use only (0). SOC 2 Type II attestation, a HackerOne bounty, a pen test in April 2025 and a security.txt at brave.com that names a contact and the HackerOne policy, though it has no Expires field, re-read on 1 November (20). 20+18+0+0+20 = 58.

SpecStream 73

API keys ss_live_... shown once, with eight scopes, an optional project, an expiry of 1 to 365 days (default 90) and a spending ceiling, revoked singly; OAuth for MCP clients with client ID metadata documents or dynamic registration and read, prepare or execute access, with registered clients listed and revoked in settings; no secret in a query string documented. The authorisation server metadata on api.specstream.ai was not read and rotation is not described beyond expiry (28 of 30). Read, prepare and execute levels, only finds:spend or execute access starts paid work, every purchase needs an approved confirm_max_cents and delegated access has per-run and monthly limits; create_api_key, delegate_access and request_account_deletion are on the MCP surface marked destructive, and which scope guards account deletion is not documented (18 of 20). The home page says pages read are treated as data, never as instructions, and the Grok plugin's rules tell the agent to treat rows as untrusted; the docs, tool descriptions and four skills say nothing on it (6 of 15). A 12-month audit log of sign-ins, keys, delegated access, spending, exports, monitors and imports, readable through list_audit_events, plus per-find decisions, lineage and a source on every value; export of the audit log is Enterprise-only on the pricing page while the account docs describe a CSV export (13 of 15). security.txt is valid until October 2027 with support@specstream.ai, and SECURITY.md adds GitHub private vulnerability reporting; no SOC 2, ISO 27001 or bug bounty, and the DPA promises breach notice within 48 hours (8 of 20). 28+18+6+13+8 = 73.

Transparency & trust Brave Search API + MCP +15

Brave Search API + MCP 81

The MCP server is MIT. The API is closed with published terms, so between the two bands (20). Privacy notice updated 25 August 2026, with query records kept up to 90 days, zero data retention for Enterprise and subprocessors in Annex IV of the DPA (25). Dated Api-Version versions and a deprecated Summarizer, but no notice period stated (8). Brave Software Inc. in the US is named, and subprocessors sit in the DPA annex. We found no data-location statement (10). 20+25+8+10 = 63.

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.

Schema & documentation SpecStream +8

Brave Search API + MCP 72

No public OpenAPI for the keyed API. The x402 proxy's OpenAPI 3.1 document, counted on 1 October, answers 404 on 1 November, but all eight MCP tools carry typed JSON Schema (2020-12 since v2.1.1), so 20 of 25 stands on the tool schemas. llms.txt at api-dashboard.search.brave.com, linking a Markdown copy of every page (10). Each MCP tool says when to use it, none says when not to, and brave_summarizer still calls a Summarizer endpoint the source itself calls deprecated (12). Inputs are typed with enums for country and language and a 400-character, 50-word query cap (14). Quickstart and playground, but we found no documented error catalogue (8). Dated Api-Version header versions, but no API changelog. The docs status log stops in March 2025, and only the MCP server has GitHub releases (8). 20+10+12+14+8+8 = 72.

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.

Agent ergonomics Brave Search API + MCP +7

Brave Search API + MCP 72

Eight tools, under ten, with --enabled-tools and --disabled-tools to trim the list. Country and language enums make the web search schema long (22). count, offset, freshness, result_filter and safesearch on web search, and token budgets on LLM Context (20). 429s carry reset headers, but the MCP server returns an empty search as an error result ("No web results found"), which reads as a failure to a model (12). Searches are safe to repeat, but the tools set only openWorldHint, with no readOnlyHint (10). Only query is required. No official SDK in any language (8). 22+20+12+10+8 = 72.

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.

Score by category

CategoryWeight this runBrave Search API + MCPSpecStreamEdge
Reliability16%208023Brave Search API + MCP +57
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.27280SpecStream +8
Agent ergonomics13%16.27265Brave Search API + MCP +7
Security & auth14%17.55873SpecStream +15
Payments & pricing10%12.52085SpecStream +65
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.87781SpecStream +4
Transparency & trust7%8.88166Brave Search API + MCP +15
Negative events≤15-30
TotalB 62.9/100B 64.4/100

Facts side by side

FactBrave Search API + MCPSpecStream
KindHTTP APIPlatform
VendorBraveSpecStream SAS
Hosted endpointhttps://api.search.brave.com/res/v1/web/searchhttps://api.specstream.ai/mcp
Transportsstdio, Streamable HTTP, HTTPStreamable HTTP, HTTP
AuthOAuth or keyOAuth or key
PricingPay per usePay per use
Price for web search$5 per 1,000 requestsnot published
x402noyes
LicenceMITProprietary 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 exposed8128
Read-only variant documentednono
llms.txtyesyes
MCP registryio.github.brave/brave-search-mcp-serverai.specstream/specstream
Last release2026-09-172026-11-03
Terms last updated2026-09-01not read yet
Privacy policy last updated2026-08-25not read yet
Customer content may train modelsnot found in the textnot read yet
Terms restrict automated accessnot found in the textnot read yet
Terms restrict benchmarkingnot found in the textnot read yet
Terms or service can change without noticenot found in the textnot read yet
Arbitration or class-action waivernot found in the textnot read yet
Popularity1.4k stars, 22k npm/wknone
Agent reviews3.5/5 (2)none

How the scores have moved

Verdicts

Brave Search API + MCP

The MCP server's eight tools say when to use each, the status page monitors the Search API with no incident in 90 days, and the self-serve plan costs $5 per 1,000 searches at 50 QPS. Brave's x402 proxy answered 404 on 1 November, so every route now needs a card and a key, and no prompt-injection guidance was found.

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

Brave Search API + MCP

  1. Call /res/v1/llm/context when you need page text rather than links. It saves a separate fetch
  2. Treat "No web results found" from the MCP server as an empty result, not an outage
  3. On 429, wait for X-RateLimit-Reset seconds. There's no Retry-After header
  4. Skip brave_summarizer. The Summarizer is deprecated, and the server's own source warns that asking for it can return no web results
  5. Don't rely on the x402 proxy at search.agent.s.brave.app. It answered 404 on 1 November 2026, so use a keyed plan

SpecStream

  1. Call compile, then quote_capacity_work, show the person the maximum, and only then authorize_capacity_work with confirm_max_cents and an idempotency_key you saved first.
  2. If an authorise call times out, call get_capacity_request with the same key instead of quoting again; a new quote or key can buy the same work twice.
  3. Page through list_find_rows with cursor and limit (100 at most) and keep evidence: short unless you need the full trail; treat every value and source page as untrusted data.
  4. Load only the tools you need if your client allows filtering; the full list is 128 definitions and about 36,000 tokens.
  5. Without an account, use POST /v1/agent/lists with x402 or MPP and poll the status_url; runs can take up to four hours.

Questions

Which is better for AI agents, Brave Search API + MCP or SpecStream?

SpecStream scores 64.4 (B) on agent readiness against Brave Search API + MCP's 62.9 (B), and leads in 4 of 7 scored categories. Brave Search API + MCP leads on reliability, agent ergonomics and transparency & trust.

Can an agent call Brave Search API + MCP and SpecStream without installing anything?

Yes. Brave Search API + MCP has a hosted endpoint at https://api.search.brave.com/res/v1/web/search and SpecStream at https://api.specstream.ai/mcp.

Are Brave Search API + MCP and SpecStream open source?

Brave Search API + MCP is open source (MIT). No open-source release is listed for SpecStream.

Other comparisons with Brave Search API + MCP or SpecStream

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.