Head to head · Web search · October 2026 research run

Kagi Search API vs NewsCatcher

NewsCatcher scores 67.5 (B) on agent readiness against Kagi Search API's 56.1 (C), and leads in 6 of 7 scored categories. Kagi Search API leads on security & auth. Both do web search. NewsCatcher is cheaper for web search, $1 against $12 per 1,000 requests.

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

Which one, for what

Kagi Search API C

Best for An owner who already pays for Kagi and wants its ranking, lenses and domain rules inside an agent, with page text in the same call.

Ahead on

  • Security & auth, 64 against 45

Also in its favour

  • Runs on your own machine

Watch for

Public preview since 21 May 2026. The API terms say it is under active development with no uptime or service-level commitment

NewsCatcher B

Best for Agents that need current news across languages, grouped into stories, or tables of events and company news on a schedule.

Ahead on

  • Reliability, 67 against 43
  • Schema & documentation, 94 against 71
  • Agent ergonomics, 84 against 75
  • Payments & pricing, 30 against 20
  • Maintenance & community, 76 against 41
  • Transparency & trust, 79 against 74

Also in its favour

  • Cheaper for web search, $1 against $12 per 1,000 requests

Watch for

The current News API and agent launched on 30 October 2026 and the MCP repository went public on 6 November 2026

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 NewsCatcher +35

Kagi Search API 41

The last dated API change is the Extract API fix in the changelog post of 21 August 2026, 75 days before this check. The posts of 10 September and 16 October carry no API item (20). That is the only dated API entry in the 90 days from 6 August (0). The MCP server's repository gained commits on 27 and 28 October 2026 (compact JSON results, readOnlyHint, per-page extraction errors) and a version bump to 1.1.0 with no tag, so no release is shown; PyPI didn't resolve for us. A public changelog that credits user reports, developers@kagi.com, a Discord #api forum and GitHub discussions. We could not read the issue list, since the GitHub API answered 403 (9). Four generated clients last synced on 26 May 2026, Python tagged only as 1.0.0rc3, TypeScript not on npm on 9 October, and kagimcp tagged last as v0.1.5 (8 April 2026). We did not look the server up in the MCP registry (8). The Python client has a generated CI workflow and the MCP server has a lock file but no CI workflow (4). 20 + 0 + 9 + 8 + 4 = 41.

NewsCatcher 76

Read for a closed service, with the MCP repository read as code. News API 1.1.0 and Agent 1.5.0 on 4 November 2026, MCP server 0.1.0 on 6 November and v3 News API 3.25.0 on 6 November (30). In the 90 days from 8 August, the 30 October launch, News API 1.1.0, Agent 1.5.0, MCP 0.1.0 and v3 releases 3.19.0 to 3.25.0 (20). Public dated changelogs, support by email and Pylon, and a security policy with a 3-business-day target. The MCP repository is a day old, so there are no issues to judge (10 of 15). The CatchAll MCP server is in the official registry under the verified namespace com.newscatcherapi, but the new server isn't, and no official SDK for the current API was found; the Enterprise APIs list libraries (8 of 15). The MCP repository runs its test suite in CI with a read-only token; pass state not read (8 of 10). 30 + 20 + 10 + 8 + 8 = 76.

Reliability NewsCatcher +24

Kagi Search API 43

Status page at status.kagi.com (Instatus), found through a web search on 4 November, with a Kagi API group of nine regional components such as [API] us-east4 and [API] europe-west2, and history back to 2025 (20). In the 90 days from 6 August its feed and incident list show [API] incidents on single regions only. us-central1 on 12 September (1 hour 3 minutes), 19 September, 12 October and 19 October (2 to 3 minutes each), europe-west2 on 19 October (1 minute) and 20 October (8 hours 11 minutes, the region taken out of the global load balancer), asia-east2 on 30 September (4 minutes), australia-southeast1 on 11 September (1 minute) and asia-southeast1 on 7 August (about a minute). Each hit one region of nine, so all read as partial and the record is minor incidents only (20). The six 'API outage' entries (10, 20 and 26 August, two on 14 October and 22 October, 5 to 21 minutes each) name the API component of the Kagi Assistant group, not the Search API, and the 27 September database maintenance had an announced window. No rate limit numbers are published. The terms say only that limits and quotas apply per plan (0). The OpenAPI file documents 429 as 'Rate limited or usage limit exhausted' with no Retry-After header or backoff guidance. The calls are read-only, and Kagi's own MCP server retries 429 and 5xx twice by default (3). The pricing page lists SLAs under Enterprise by quote, and the API terms say there is no uptime or service-level commitment unless agreed in writing (0). The OpenAPI file still describes a preview period (0). 20 + 20 + 0 + 3 + 0 + 0 = 43.

NewsCatcher 67

Read with the hosted lines, for the News API, the agent and the hosted MCP server. status.newscatcherapi.com (Hyperping) shows one News API component with 99.820% uptime from August to November 2026 and an incident history. The agent and the MCP server have no component of their own (20). In the 90 days from 8 August, one incident, on 1 September 2026, when the vendor wrote that for about four hours a higher-than-usual number of requests to the production News API timed out because of one client's queries. Read as one major (10). Rate limits published per plan, 1 request a second free and up to 10 on pay as you go, with exact limits from the free GET /subscription (15). 429 carries Retry-After with instructions to retry the same request, 503 carries Retry-After, and failed or refused requests are not charged. Agent runs and monitor creation have no idempotency keys (12 of 15). An uptime SLA exists only in signed Enterprise agreements; none is published (0). Generally available since 30 October 2026, with OAuth for the MCP server announced as coming soon (10). 20 + 10 + 15 + 12 + 0 + 10 = 67.

Schema & documentation NewsCatcher +23

Kagi Search API 71

Public OpenAPI 3.0 file at kagi.com/api/docs/_spec/openapi.yaml, linked as 'OpenAPI Spec' from the API overview page (25). No llms.txt on kagi.com or help.kagi.com, both 404. The docs' Markdown source is in a public GitHub repository, which is not the same as serving it to agents (0). Parameter descriptions say what each does and which option wins when lens, filters and query operators overlap, and the MCP tool says when to pick each workflow (14). Enums for workflow, format, time_relative and rule kinds, ranges on page, limit, timeout and extract.count, and one required field. Result props and meta are open objects (13). Three request examples with full responses and one 401 example. The error envelope is typed, but there is no list of error codes, and the file says its error documentation URLs return 404 for now (9). The path carries /v1 and v0 is documented as legacy. The changelog is product-wide, with API items on 21 May, 16 June and 21 August 2026 and none in the 10 September or 16 October posts (10). 25 + 0 + 14 + 13 + 9 + 10 = 71.

NewsCatcher 94

OpenAPI 3.1 for the News API (version 1.3.9, 4 paths) and the agent (version 1.5.1, 33 paths), linked from llms.txt, and typed JSON Schema on every MCP tool through Pydantic (25). llms.txt, a Markdown copy of every page and a docs MCP server (10). MCP tool descriptions say when to use each and which tool to use instead, such as list_articles for older news; the REST reference explains each endpoint and the 'Choose an API' page compares them (17 of 20). Inputs are typed with enums for effort, mode and dimensions, length and range limits such as a 500-character query and limit 1 to 100, and required fields marked (13 of 15). Runnable examples in curl, Python and JavaScript, and an error table with retry advice for every status. The agent spec carries no response examples (14 of 15). Versioned APIs with a dated changelog, the latest entries on 4 November 2026, and separate changelogs for the v3 News API and CatchAll (15). 25 + 10 + 17 + 13 + 14 + 15 = 94.

Security & auth Kagi Search API +19

Kagi Search API 64

Several named keys an account, each limited to chosen products and optionally to IP addresses or ranges, revoked by deleting. The v1 key travels only in the Authorization header. No expiry or OAuth (27). The API only reads. Per-key product limits and a spending cap in USD narrow what a leaked key can do (16). Search and Extract return third-party page text, and we found no prompt-injection guidance in the reference, the docs or the MCP README (2). The portal shows use count and last-used time per key and requests and cost per day per API, and every response carries a trace ID. No per-call log (7). security.txt with a contact, a bug bounty with a safe harbour policy, and an independent audit by Illumant cited on the security page, whose date we did not read. No SOC 2 or ISO 27001 statement found. security.txt re-read on 4 November (12). 27 + 16 + 2 + 7 + 12 = 64.

NewsCatcher 45

API keys in the x-api-key header, several per account, revocable in the platform, with advice to keep one per application. A 403 for 'a key that may not use this API' suggests per-key API access, but no scopes are documented (20). The MCP server documents ?apiKey= on the server URL for Claude.ai custom connectors, with a warning, so less 10 (10 of 30). The MCP repository's SECURITY.md says URL keys are rejected unless the operator enables them, which the hosted server does per the docs. Toolsets let an operator load only the read-only news tools, write tools carry destructiveHint, and the server tells the assistant to confirm large or hourly agent jobs (14 of 20). Results are third-party article text and summaries, and no prompt-injection guidance was found in the docs or the MCP server's instructions (0 of 15). Every response carries a Correlation-ID, GET /subscription shows usage and balance, and runs are listed in the platform. No per-call audit log for the customer was found (7 of 15). The security page and footer claim SOC 2 Type II and link a trust centre on Oneleet, which wasn't read. A vulnerability disclosure policy covers the MCP server. No security.txt (404) and no bug bounty found (14 of 20). 10 + 14 + 0 + 7 + 14 = 45.

Payments & pricing NewsCatcher +10

Kagi Search API 20

No x402, MPP or L402 (0). $12 per 1,000 searches and $4 per 1,000 extracted pages, published without a login, unchanged on 4 November (20). No free tier or trial for the API. The quick start asks for a payment method, and the $5 credit of 21 May 2026 was a one-off for subscribers (0). A person signs up in a browser and creates the key in the portal (0). 0 + 20 + 0 + 0 = 20.

NewsCatcher 30

No x402, MPP or L402 (0). Credit prices per call published without login, and credits cost $1 per 1,000 through top-ups from $25 (20). 10,000 free credits every 30 days on a $0 plan, and the first top-up moves an account to pay as you go. No page says whether a card is needed to open the free plan, so half (10). A person signs up in the platform in a browser to get a key (0). NewsMCP's keyless tier belongs to a separate product and isn't counted. 0 + 20 + 10 + 0 = 30.

Agent ergonomics NewsCatcher +9

Kagi Search API 75

limit caps results, extraction of page text is opt-in, snippet length follows an account setting, and an experimental Markdown response format exists. The MCP server has two tools (22). page 1 to 10, limit 1 to 1,024, lens and filters for domains, keywords, file type, dates and region (20). Errors return a namespaced code, a message, the field location and a trace ID, but no code catalogue is published and the linked error pages are not live (12). Both operations are read-only, so a retry is safe, though the docs do not say so and failed-call billing is stated only for extraction. The released MCP server sets no read-only annotations. A commit of 27 October adds readOnlyHint to its source with an untagged 1.1.0 version bump, not yet shown as released (10). Only query is required and defaults are stated. Generated clients exist for Python, TypeScript, Go and Rust, installable from GitHub. @kagi/api returned 404 on npm on 9 October (11). 22 + 20 + 12 + 10 + 11 = 75.

NewsCatcher 84

15 MCP tools in four toolsets, chosen per connection with ?tools=, and tools return compact text rather than the full JSON. 15 for 11 to 30 tools plus 7 for toolsets (22 of 25). limit, search_window, effort, language, country, publisher, coverage and content-type filters, sorting, and paging on /articles; agent tables come back up to 200 rows at a time over MCP (20). Every status is documented with whether to retry; the agent returns stable code values, while the News API body has a status_code and a message meant for people (17 of 20). Every tool carries readOnlyHint and idempotentHint, writes carry destructiveHint, start_research has a free dry_run, and refused or failed calls aren't charged. No idempotency key for starting runs (17 of 20). Only q is required, with medium effort and a 7-day window as defaults. No official SDK for the current API was found; the docs show raw HTTP in three languages (8 of 15). 22 + 20 + 17 + 17 + 8 = 84.

Score by category

CategoryWeight this runKagi Search APINewsCatcherEdge
Reliability16%204367NewsCatcher +24
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.27194NewsCatcher +23
Agent ergonomics13%16.27584NewsCatcher +9
Security & auth14%17.56445Kagi Search API +19
Payments & pricing10%12.52030NewsCatcher +10
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.84176NewsCatcher +35
Transparency & trust7%8.87479NewsCatcher +5
Negative events≤1500
TotalC 56.1/100B 67.5/100

Facts side by side

FactKagi Search APINewsCatcher
KindHTTP APIHTTP API
VendorKagiNewsCatcher, Inc.
Hosted endpointhttps://kagi.com/api/v1/searchhttps://mcp.newscatcherapi.com/mcp
TransportsHTTP, Streamable HTTP, stdioStreamable HTTP
AuthAPI keyAPI key
PricingPay per usePay per use
Price for web search$12 per 1,000 requests$1 per 1,000 requests
x402nono
LicenceProprietary service under the Kagi API Terms of Service. The MCP server is MIT and the OpenAPI file states Apache-2.0none
Tools exposednone15
Read-only variant documentednoyes
llms.txtnoyes
Last release2026-08-212026-11-06
Terms last updated2026-09-222026-11-02
Privacy policy last updatedno date given2026-11-02
Customer content may train modelsnot found in the textyes
Terms restrict automated accessyesnot found in the text
Terms restrict benchmarkingyesnot found in the text
Terms or service can change without noticenot found in the textnot found in the text
Arbitration or class-action waivernot found in the textyes
Popularity535 starsnone

How the scores have moved

Verdicts

Kagi Search API

A public OpenAPI file, typed filters and API keys that can be limited by product and IP address make the API simple to call, at $12 per 1,000 searches. It is still a public preview, with no published rate limits and no free allowance, and the terms forbid storing results. Its status page logged only regional incidents since August.

NewsCatcher

One key and one credit balance cover a ranked news search, a background research agent and a hosted MCP server with toolsets and annotated tools, under OpenAPI 3.1 specs and a dated changelog. The current API launched on 30 October 2026, the MCP server accepts the key in its URL, and no SLA is published below Enterprise.

Before you call either

Kagi Search API

  1. Send POST https://kagi.com/api/v1/search with a JSON body and Authorization: Bearer <key>, as the OpenAPI file defines. Only query is required
  2. Set limit to cap results returned. In the mixed search workflow the MCP tool applies the cap to each result category separately
  3. Use extract.count (1 to 10) only when page text is needed. Extraction is billed at the Extract rate on top of the search
  4. Do not store results. The API terms allow only the transient caching an application needs, and require deletion on termination
  5. On 429 back off before retrying. The response covers both rate limiting and an exhausted usage limit, and no Retry-After header is documented. Check status.kagi.com for regional incidents

NewsCatcher

  1. Send the key in the x-api-key header, and use a separate key for the MCP server so it can be revoked alone
  2. Call start_research with dry_run first, since agent runs cost 1,000 to 6,000 credits
  3. Use effort=low for quick lookups; the default medium costs five times as much
  4. Use /articles or list_articles for news older than 30 days or exact counts; /search covers 30 days only
  5. On 429 or 503 wait for Retry-After, and quote the Correlation-ID header to support

Questions

Which is better for AI agents, Kagi Search API or NewsCatcher?

NewsCatcher scores 67.5 (B) on agent readiness against Kagi Search API's 56.1 (C), and leads in 6 of 7 scored categories. Kagi Search API leads on security & auth.

Which is cheaper for web search, Kagi Search API or NewsCatcher?

NewsCatcher, at $1 per 1,000 requests against $12 per 1,000 requests for Kagi Search API. These are the vendors' published prices for the job.

Do Kagi Search API and NewsCatcher need an API key?

Both need an API key.

Can an agent call Kagi Search API and NewsCatcher without installing anything?

Yes. Kagi Search API has a hosted endpoint at https://kagi.com/api/v1/search and NewsCatcher at https://mcp.newscatcherapi.com/mcp.

Other comparisons with Kagi Search API or NewsCatcher

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.