News your agent can actually use.
One event returns once, with the outlets that covered it and the source each article came through. Query by meaning, filter by language, publisher and source, and call it from your backend or straight from Claude.
1,000 credits a month. No card.
Export licence rules tightened for lithography tools
The problem
Twenty results, one story
A wire report reaches hundreds of sites within an hour. Search for it and you get all of them back, each ranked as an independent result. A person skims past the repetition. A model reads the same fact twenty times, fills its context, and treats the repetition as corroboration.
Ask for stories instead of articles and that event arrives once, carrying the list of publishers who ran it. Three outlets or thirty — that number tells you more than the article count ever did.
A normal news API
- 20 results
- 14 are the same wire story
- ? how many outlets ran it
- ? which languages
- ? when it started
- Agent must deduplicate…
Unzoi · one story
- 1 story
- 34 outlets carried it
- 3 languages
- first seen 07:31, last 19:40
- story_id, and every article behind it
- credits_charged: 1
An illustration of one call's shape, not a measurement. Every line on the right is a field in the response, so the agent reads it instead of inferring it.
One call
Ask for stories, not rows
The same filters over REST and MCP, and the same key. A story carries the outlets that ran it, the languages they ran it in, and when it started — so an agent can judge how widely something was covered without reading forty copies of it.
- One key for the REST API and the MCP server
- Eighteen tools over the same query surface
- A credit count on every response, known before it runs
MCP · any client
{
"mcpServers": {
"unzoi": {
"url": "https://api.unzoi.com/mcp",
"headers": { "x-api-key": "your-key" }
}
}
} REST · curl
curl -s -G "https://api.unzoi.com/stories" \
-H "x-api-key: $UNZOI_API_KEY" \
--data-urlencode "q=chip export controls" \
--data-urlencode "mode=hybrid" \
--data-urlencode "from=2026-09-08" Response
{
"stories": [
{
"story_id": "20260910-0731-4f2a",
"title": "Export licence rules tightened for lithography tools",
"outlets": 34,
"articles": 41,
"languages": ["eng", "deu", "jpn"],
"first_seen": "20260910073100",
"last_seen": "20260910194000"
}
],
"total": 12,
"credits_charged": 1
} Why this one
Built for tool calls
A first-party MCP server
Eighteen tools over the same query surface as the REST API, with the same filters and the same key. No community wrapper to maintain, no drift between what your backend does and what your agent does.
Matching on meaning
A layoff is also a restructuring, a headcount reduction and letting people go. Keyword search finds whichever phrasing you guessed. Semantic and hybrid modes find the event.
26 languages, filtered properly
Japanese has no spaces. Arabic drops its vowels. Serbian is written in two alphabets at once. Language is a first-class filter here, not a flag bolted onto an English index.
Nothing gated
Semantic retrieval, story grouping and MCP access are on the free tier. Paid plans buy credits, history and credits a minute. You evaluate what you would ship.
For architects
Where it sits in your stack
Sources in, one graph of stories and entities in the middle, two surfaces out. Every part carries its status from the same roadmap the documentation follows.
Sources
- Aggregate metadata feed
- Publisher and broadcaster feeds
- Licensed wires
- Government and institutional feeds
+3 more kinds planned
The Event Graph
- Stories
- Entities
- Relationships
- Signals
- Watches
- Provenance
- Publisher profiles
Read from the whole article · 4 more parts planned
Surfaces
- REST API
- MCP server, 18 tools
Same filters, same key, same credits
Your stack
- Agents and assistants
- Backends and pipelines
- Feeds inside a product
Where it runs
- Unzoi Cloud
- Your cloud
- Private network
- Disconnected
How it works, layer by layer Running it where you choose
Provisional figures, measured from one ingestion adapter’s public feed rather than from the index itself, and regenerated each publication cycle.
The response
What we read, and what we return
The whole article, not the headline
The analysis runs over the whole article, not the headline. Topics, organisations, people, places, amounts, quotes, tone and every signal score are computed from the full text — each article even carries its own word count, and the signals are measured per hundred words of it. A headline-only index cannot tell you that a piece mentions a plant closure in its ninth paragraph; this one can.
Fields, links and identifiers
What comes back is headline, publisher, timestamp, language, link, a story identifier and everything derived from that reading. Not article bodies — those stay with the publishers who wrote them, and you stay clear of the licensing questions that follow full text around.
Small responses suit agents well
A model choosing what to read next needs to compare candidates, not consume them, and a compact result set lets it weigh far more options for the same budget. When one of them matters, its story identifier expands into the whole story in one call: every article, every outlet, first and last seen. Filters are exact, so a name resolves first to the spellings the index holds, grouped with counts. Other filters take a radius around a point or a class of event, such as a bankruptcy or a strike. The resolved id also shows who is reported alongside it, with the articles behind every connection.
Recipes
Start here
Limits
Where this is the wrong choice
You need the full text of articles
If your application needs the full text of articles, this is not the foundation for it and no plan changes that — license text from the publishers directly.
A person reads the feed
If your reader is a person scanning a feed and duplicate coverage does not bother them, simpler and cheaper options exist and the grouping you are paying attention to here is solving a problem you do not have.
Front pages, or country first
If you need newspaper front pages, or country filtering as the primary axis of your product today, other vendors are stronger and the comparison pages say which and why.
A regulatory screening obligation
If you have a regulatory screening obligation, buy a screening vendor: this is a news index, with no list coverage, no resolution against a registry and none of the audit guarantees that obligation carries.
Deciding what is true
It is also not an evidence product: it says what was reported and by whom, not whether it is true. There is no source reliability score today, and separating independent reporting from one wire carried by many outlets is not something it does yet.
A news index tells you what is being reported, which is narrower than it sounds.
The general shape of the limit is worth stating once. It is silent on what is true, on what is planned, and on everything that happened without anyone writing about it. It is a timeliness instrument rather than a completeness one, and most disappointment with this category comes from buying it as the second thing. Each solution page names the limit for its own job, which is usually the part that decides whether it fits.