Head to head · Web search · October 2026 research run
Mojeek Web Search API vs SpecStream
SpecStream scores 64.4 (B) on agent readiness against Mojeek Web Search API's 36.4 (F), and leads in 4 of 7 scored categories. Mojeek Web Search API leads on reliability. Both do web search. SpecStream accepts x402. Mojeek Web Search API doesn't.
Best web search APIs for AI agents · All 326 search comparisons
Which one, for what
Best for Agents and products that want a second, independent index beside Google-derived results, or European data handling with no sub-processors.
Ahead on
- Reliability, 45 against 23
Watch for
The API key is documented only as a URL query parameter, and rotating a key means emailing the API team
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 29
- Security & auth, 73 against 15
- Payments & pricing, 85 against 20
- Maintenance & community, 81 against 10
Also in its favour
- An agent can pay per call over x402, with no account
- A hosted endpoint, with nothing to install
- Free to start without a card
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.
Maintenance & community SpecStream +71
Mojeek Web Search API 10
Read for a closed service. No API changelog, release notes or dated API change were found, and the blog's posts since 2024 are about search in general, so the last change can't be dated (0). No dated changes in the 90 days from 8 August (0). A staff member answered API questions on the community forum within a day in December 2025 and October 2026, and support is by email; no public changelog (10 of 15). No official SDKs or MCP server (0). No public packages or CI to measure (0). 0 + 0 + 10 + 0 + 0 = 10.
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.
Payments & pricing SpecStream +65
Mojeek Web Search API 20
No x402, MPP or L402 (0). Per-request prices published without login, £2 and £3 per 1,000 requests (20). The FAQ says a free credit comes with the Startup plan, but a bank card is required to open an account (0). A person signs up in a browser and adds a card (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.
Security & auth SpecStream +58
Mojeek Web Search API 15
One key per account, documented only as the api_key query parameter, and rotation or revocation is by email to the API team (a staff reply of 22 October 2026 on the community forum asks for the key's last 8 digits). One all-powerful key (10) less 10 for the key in the URL (0). Search is read-only and there is nothing to write, but no scoped or restricted key (10 of 20). Results are third-party titles and snippets, with no prompt-injection guidance found (0). No audit log or per-call usage view was found in the docs; the FAQ mentions budget alerts on the account (0 of 15). security.txt names security@mojeek.com, with no Expires field. No bug bounty, disclosure policy, SOC 2 or ISO 27001 found; the API page claims compliance with European rules such as the EU Data Act without a certification (5 of 20). 0 + 10 + 0 + 0 + 5 = 15.
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.
Schema & documentation SpecStream +51
Mojeek Web Search API 29
No OpenAPI or other machine-readable contract (0). No llms.txt (404) and no Markdown pages for agents (0). The parameters page states what each parameter does, with notes on when not to use reg and clufmt, but nothing on when another endpoint fits better (12 of 20). Every parameter has a type, defaults and valid ranges (tlen 0 to 127, dlen 0 to 511, rbb and lbb 1 to 100, up to 25 domains), though reg is called an enum without listing its values (11 of 15). One curl example and annotated JSON and XML response formats; errors appear only as a status string with one example (6 of 15). No API version, changelog or dated release notes, and the quickstart and the parameters page give different hosts (0). 0 + 0 + 12 + 11 + 6 + 0 = 29.
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.
Reliability Mojeek Web Search API +22
Mojeek Web Search API 45
Read with the hosted lines. status.mojeek.com is a Site24x7 StatusIQ page with Search, Website, Blog and Community components. It is drawn by script, so only its RSS feed could be read, which shows each component's current state (Search operational since 7 September 2026) and no incident entries (15 of 20). No readable incident history (5). Rate limits are published per plan, 5 a second and 100,000 a day on Startup, 10 a second and 400,000 a day on Business (15). Over the daily limit the JSON status reads 'ERROR: Daily Limit Reached'; no HTTP 429, Retry-After or backoff guidance was found (0). No SLA, and the API terms say the service is provided as is and may be interrupted without notice (0). Generally available, with only the lr parameter marked beta (10). 15 + 5 + 15 + 0 + 0 + 10 = 45.
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.
Score by category
| Category | Weight this run | Mojeek Web Search API | SpecStream | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 45 | 23 | Mojeek Web Search API +22 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 29 | 80 | SpecStream +51 |
| Agent ergonomics | 13%16.2 | 66 | 65 | Mojeek Web Search API +1 |
| Security & auth | 14%17.5 | 15 | 73 | SpecStream +58 |
| Payments & pricing | 10%12.5 | 20 | 85 | SpecStream +65 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 10 | 81 | SpecStream +71 |
| Transparency & trust | 7%8.8 | 68 | 66 | Mojeek Web Search API +2 |
| Negative events | ≤15 | 0 | 0 | |
| Total | F 36.4/100 | B 64.4/100 |
Facts side by side
| Fact | Mojeek Web Search API | SpecStream |
|---|---|---|
| Kind | HTTP API | Platform |
| Vendor | Mojeek Limited | SpecStream SAS |
| Hosted endpoint | no (local only) | https://api.specstream.ai/mcp |
| Transports | Streamable HTTP, HTTP | |
| Auth | API key | OAuth or key |
| Pricing | Pay per use | Pay per use |
| Price for web search | $2.68 per 1,000 requests | not published |
| x402 | no | yes |
| Licence | none | 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 | 0 | 128 |
| Read-only variant documented | no | no |
| llms.txt | no | yes |
| MCP registry | not listed | ai.specstream/specstream |
| Last release | none | 2026-11-03 |
| Terms last updated | no date given | not read yet |
| Privacy policy last updated | 2022-02-02 | 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 | not found in the text | not read yet |
Verdicts
Mojeek Web Search API
Mojeek sells search over its own independent index at published per-request prices, with region, language, date and domain controls and storage rights on the Business plan. The key travels only in the URL, rotation is by email, a card is needed to start, and there is no OpenAPI, changelog, 429 handling or SLA.
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
Mojeek Web Search API
- Send
fmt=json, since the default response is XML - Read
response.statuson every call; a daily limit shows as 'ERROR: Daily Limit Reached' rather than an HTTP error - Set
lb,lbb,rbandrbbas the quickstart recommends, or results lean to no language or region - Keep the key out of logs and shared URLs, since it travels in the query string
- On the Startup plan, don't keep results for more than an hour
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.
Questions
Which is better for AI agents, Mojeek Web Search API or SpecStream?
SpecStream scores 64.4 (B) on agent readiness against Mojeek Web Search API's 36.4 (F), and leads in 4 of 7 scored categories. Mojeek Web Search API leads on reliability.
Can an agent call Mojeek Web Search API and SpecStream without installing anything?
No hosted endpoint is listed for Mojeek Web Search API. SpecStream has a hosted endpoint at https://api.specstream.ai/mcp.
Other comparisons with Mojeek Web Search API or SpecStream
- Web Search Tool on Amazon Bedrock AgentCore vs Mojeek Web Search API
- Web Search Tool on Amazon Bedrock AgentCore vs SpecStream
- Arcmira vs Mojeek Web Search API
- Grounding with Bing Search vs Mojeek Web Search API
- Grounding with Bing Search vs SpecStream
- Brave Search API + MCP vs Mojeek Web Search API
- Brave Search API + MCP vs SpecStream
- Cloudflare Web Search API vs Mojeek Web Search API
- Cloudflare Web Search API vs SpecStream
- DeepSeek Search and Fetch API vs Mojeek Web Search API
- DeepSeek Search and Fetch API vs SpecStream
- Exa API + MCP vs Mojeek Web Search API
- Exa API + MCP vs SpecStream
- Firecrawl MCP vs Mojeek Web Search API
- Firecrawl MCP vs SpecStream
- Grep AI vs Mojeek Web Search API
- Kagi Search API vs Mojeek Web Search API
- Kagi Search API vs SpecStream
- Linkup vs Mojeek Web Search API
- Linkup vs SpecStream
- Mojeek Web Search API vs NewsCatcher
- Mojeek Web Search API vs Parallel Search and Task APIs
- Mojeek Web Search API vs Perplexity Search API
- Mojeek Web Search API vs SearchAPI.io
- Mojeek Web Search API vs SerpApi
- Mojeek Web Search API vs Serper
- Mojeek Web Search API vs SERPHouse
- Mojeek Web Search API vs SerpKite
- Mojeek Web Search API vs Tavily API + MCP
- Mojeek Web Search API vs TinyFish Search
- Mojeek Web Search API vs Valyu
- Mojeek Web Search API vs You.com APIs
- Parallel Search and Task APIs vs SpecStream
- Perplexity Search API vs SpecStream
- SearchAPI.io vs SpecStream
- SerpApi vs SpecStream
- Serper vs SpecStream
- SERPHouse vs SpecStream
- SerpKite vs SpecStream
- Arcmira vs SpecStream
- Grep AI vs SpecStream
- Liner Search MCP vs SpecStream
- NewsCatcher vs SpecStream
- SpecStream vs Tavily API + MCP
- SpecStream vs TinyFish Search
- SpecStream vs Valyu
- SpecStream vs You.com APIs
Machine-readable
- This page as Markdown
/compare/mojeek-vs-specstream.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/mojeek.json·/api/v1/tools/specstream.json - From a terminal
anchor compare mojeek specstream(the CLI) - Over MCP
compare_tools {"a": "mojeek", "b": "specstream"}at/mcp, no key