---
summary: "gdelt_get_tv_trending is retired and zero-match queries now succeed with a notice instead of a no_* error; upstream text is Markdown-escaped in content[], and article and clip pages fit a 48,000-byte budget with a continuation to the rest."
breaking: true
security: false
---

# 0.5.0 — 2026-09-24

## Added

- **`gdelt_list_tv_stations` filters** — optional `stations`, `network`, and `market`, each an exact case-insensitive match, combined with AND; counts cover the returned stations, and a `notice` names unmatched IDs or a filter that matched nothing. ([#45](https://github.com/cyanheads/gdelt-mcp-server/issues/45))

## Changed

- **Zero-match queries succeed** on the seven query tools — the normal output shape with empty arrays and a `notice` on how to broaden the query. `dateResolution`, `gdelt_search_tv` `timeRange`, and the tone `summary` fields are now optional, omitted when the returned data cannot support them. ([#41](https://github.com/cyanheads/gdelt-mcp-server/issues/41))
- **48,000-byte response budget** on `gdelt_search_articles` and `gdelt_get_tv_clips` — records past it are counted in the new `withheldCount`, and `continuationWindows` resumes from the last returned record under `dateDesc`/`dateAsc` or splits the window under other sorts. ([#37](https://github.com/cyanheads/gdelt-mcp-server/issues/37), [#30](https://github.com/cyanheads/gdelt-mcp-server/issues/30))
- **`gdelt_get_tv_clips` requests whole clock hours** — an explicit window is sent widened to GDELT's hour granularity, so windows under 30 minutes work, and clips aired outside the window are dropped and counted in the `notice`; `gdelt_search_articles` likewise drops articles dated outside an explicit window. ([#30](https://github.com/cyanheads/gdelt-mcp-server/issues/30), [#37](https://github.com/cyanheads/gdelt-mcp-server/issues/37))
- **`gdelt_list_tv_stations`** declares `openWorldHint: true`, and its `content[]` groups stations as national, international, and local/regional. ([#48](https://github.com/cyanheads/gdelt-mcp-server/issues/48))

## Removed

- **`gdelt_get_tv_trending`** — GDELT's `trendingtopics` endpoint has returned only empty topic lists since the TV feed froze in October 2024, so the tool could not succeed; `gdelt_get_tv_context` covers TV vocabulary over a chosen window. ([#33](https://github.com/cyanheads/gdelt-mcp-server/issues/33))
- **`no_*` error reasons** — `no_articles`, `no_timeline_data`, `no_tone_data`, `no_breakdown_data`, `no_tv_coverage`, `no_clips`, `no_context`, and `no_stations` leave the `errors[]` contracts: zero matches are a successful result, and an empty station catalog fails as `gdelt_unavailable` (retryable). ([#41](https://github.com/cyanheads/gdelt-mcp-server/issues/41), [#48](https://github.com/cyanheads/gdelt-mcp-server/issues/48))

## Fixed

- **Upstream text is Markdown-escaped in `content[]`** — titles, labels, snippets, and station metadata render literally instead of as links, emphasis, or HTML; URLs are never backslash-escaped, and `structuredContent` keeps raw values. ([#38](https://github.com/cyanheads/gdelt-mcp-server/issues/38))
- **`gdelt_get_tone_distribution` bins render as separate blocks** — a blank line before each bin header stops it folding into the previous bin's article list. ([#49](https://github.com/cyanheads/gdelt-mcp-server/issues/49))

## Dependencies

- `markdown-it` `^15.0.2` added as a dev dependency, for rendered-output assertions in tests.
