Skip to content

Releases: cyanheads/gdelt-mcp-server

v0.4.1: mcp-ts-core bump — retryable 5xx, cancellation classification, stateless sessions

Choose a tag to compare

@cyanheads cyanheads released this 03 Sep 01:28
v0.4.1
0df91d1

mcp-ts-core bump — retryable 5xx, cancellation classification, stateless sessions

  • An upstream 5xx now classifies as retryable (ServiceUnavailable) instead of failing immediately (InternalError); a caller disconnect mid-call reports as a cancellation, not an internal error (mcp-ts-core ^0.12.5)
  • MCP_SESSION_MODE set explicitly to stateless in .env.example and the README, matching the Dockerfile default (#34)
  • Server identity (name/version/description) and a relative LOGS_DIR now resolve from the served package rather than the launching process's cwd
  • deps: @cyanheads/mcp-ts-core ^0.12.3 → ^0.12.5, zod ^4.4.3 → ^4.5.4 (+ 10 skills synced)

CHANGELOG v0.4.1

v0.4.0: Bounded TV timelines and GDELT API alignment

Choose a tag to compare

@cyanheads cyanheads released this 31 Aug 03:02
v0.4.0
94afb55

Bounded TV timelines and GDELT API alignment

  • Page gdelt_search_tv responses with parity-identical structured and text point data (#23)
  • Normalize TV coverage, dates, and resolution handling (#27, #29)
  • Align DOC and TV smoothing and sorting with documented GDELT parameters (#28)
  • Release metadata, plugin manifests, changelog, and generated tree are synchronized

CHANGELOG v0.4.0

v0.3.1: Plugin manifest version sync

Choose a tag to compare

@cyanheads cyanheads released this 30 Aug 21:56
v0.3.1
81ae13d

Plugin manifest version sync

  • Synchronize Claude and Codex plugin manifests with the published server version

CHANGELOG v0.3.1

v0.3.0: GDELT error contracts and DOC time windows

Choose a tag to compare

@cyanheads cyanheads released this 30 Aug 21:51
v0.3.0
a17971c

GDELT error contracts and DOC time windows

  • Stabilize fail-fast rate-limit recovery across all nine upstream-backed tools (#31)
  • Enforce DOC's 15-minute relative-timespan floor and classify parenthesized keyword rejections (#32, #35)
  • Refresh TV station-selection/request-delay docs and release metadata
  • deps: development tooling refreshed

CHANGELOG v0.3.0

v0.2.7: MCP SDK v2 maintenance

Choose a tag to compare

@cyanheads cyanheads released this 22 Aug 14:14
v0.2.7
b840902

MCP SDK v2 maintenance

  • Streamable HTTP supports protocol revision 2026-07-28 alongside legacy clients; undeclared tool inputs are rejected.
  • Bun 1.4 Docker builds, TypeScript 7 tests, framework tooling, and community-health docs are synchronized.
  • deps: @cyanheads/mcp-ts-core ^0.10.15 -> ^0.12.3 (plus development tooling updates)

CHANGELOG v0.2.7

v0.2.6: GDELT query-rejection classification and rate-limit fail-fast

Choose a tag to compare

@cyanheads cyanheads released this 24 Jul 13:07
v0.2.6
3cb742b

GDELT query-rejection classification and rate-limit fail-fast

  • Unenumerated GDELT query-rejection sentences now classify as invalid_query with a recovery hint instead of a server-fault SerializationError (#25)
  • Rate-limit rejections (HTTP 429, HTTP-200 HTML, HTTP-200 plain-text) fail fast instead of retrying into GDELT's still-closed cooldown window; request spacing widened 5100ms → 5300ms for jitter headroom (#26)
  • deps: @cyanheads/mcp-ts-core ^0.10.14 → ^0.10.15, biome → 2.5.5; bun audit clears 2 of 3 advisories, one moderate remains (unfixable from this repo)

CHANGELOG v0.2.6

v0.2.5: retrieval paths for series, points, and cap overflow

Choose a tag to compare

@cyanheads cyanheads released this 16 Jul 01:56
v0.2.5
49538e6

retrieval paths for series, points, and cap overflow

Folded-in series, capped timeline points, and cap-hit search/TV overflow now have named retrieval routes instead of dead ends.

Added:

  • gdelt_get_coverage_breakdown: series input returns folded-in labels complete under new selectedSeries; otherSeriesLabels names them, ranked (#20)
  • gdelt_get_coverage_timeline: points input renders a named timestep's full article list under new expandedPoints (#24)
  • gdelt_search_articles, gdelt_get_tv_clips: new continuationWindows enrichment hands back the queried window halved at the maxRecords ceiling — halves overlap by one second so nothing drops on the seam (#21)

Changed:

  • gdelt_get_coverage_timeline capped-link rendering now shows how many links it displayed next to the true count (#24)

Fixed:

  • gdelt_search_articles, gdelt_get_tv_clips cap-hit notice no longer tells the caller to raise maxRecords already at its ceiling (#21)

370 tests pass; bun run devcheck clean.

CHANGELOG v0.2.5

v0.2.4: content[] parity fixes; breakdown normalization documented

Choose a tag to compare

@cyanheads cyanheads released this 16 Jul 01:04
v0.2.4
b1b1599

content[] parity fixes; breakdown normalization documented

Five tools stopped truncating array data in content[] that structuredContent already returned in full; gdelt_get_coverage_breakdown now documents its normalized values.

Fixed:

  • gdelt_get_tone_distribution, gdelt_get_tv_context, gdelt_get_tv_trending render every array element instead of slicing to 2/50/50 (#19)
  • gdelt_get_coverage_timeline renders every series point; per-point article links stay capped at 3, tracked in #24 (#19)
  • gdelt_get_coverage_breakdown renders every topSeries/otherAggregated point instead of only a total and peak; the gdelt_search_tv series points remain unrendered, tracked in #23 (#19)
  • gdelt_get_coverage_breakdown discloses that values are normalized shares of media output, not absolute article counts (#10)

334 tests pass; bun run devcheck clean.

CHANGELOG v0.2.4

v0.2.3: Date-range validation and GDELT query-error fixes

Choose a tag to compare

@cyanheads cyanheads released this 16 Jul 00:28
v0.2.3
736b7c5

Date-range validation and GDELT query-error fixes

Fixed two input-handling bugs across all seven date/query-taking tools, and
picked up mcp-ts-core ^0.10.14 with a new install-time supply-chain guard.

Fixed:

  • Unpaired startDatetime/endDatetime is now rejected instead of silently
    dropped — format-validated by regex, pairing enforced in the handler (#22)
  • GDELT's plain-text query rejections (missing TV station, bad keyword,
    unbalanced parens, illegal character) now classify as ValidationError with
    a tailored recovery hint instead of a generic SerializationError (#18)

Added:

  • bunfig.toml supply-chain guard — minimumReleaseAge blocks packages
    published <3 days ago (framework excluded); @socketsecurity/bun-security-scanner
    ^1.1.2 scans every install

Dependency bumps:

  • @cyanheads/mcp-ts-core ^0.10.9 → ^0.10.14
  • vitest ^4.1.9 → ^4.1.10
  • @types/node ^26.0.0 → ^26.1.1
  • ignore ^7.0.5 → ^7.0.6
  • tsc-alias ^1.8.17 → ^1.9.0

Clears 8 transitive advisories (2 high, 6 moderate) across hono, js-yaml, and
vite — bun audit is clean.

325 tests pass; bun run devcheck clean.

CHANGELOG v0.2.3

v0.2.2: mcp-ts-core ^0.10.9 maintenance

Choose a tag to compare

@cyanheads cyanheads released this 20 Jun 11:47
v0.2.2
acea69f

mcp-ts-core ^0.10.9 maintenance

Framework, dependency, and tooling refresh — no server behavior change.

Dependency bumps:

  • @cyanheads/mcp-ts-core ^0.10.6 → ^0.10.9
  • @biomejs/biome ^2.4.16 → ^2.5.0
  • @types/node ^25.9.3 → ^26.0.0
  • vitest ^4.1.8 → ^4.1.9

Changed:

  • Framework ^0.10.9 brings the ctx.content image/audio collector, Canvas SQL-gate invalid_sql classification, and the DuckdbProvider.describe() filter-qualification fix.
  • devcheck.config.json gains packaging.pluginManifests: truelint:packaging now validates the Claude/Codex plugin manifests (descriptions, unscoped identity, full-name install arg).
  • Re-synced 13 framework skills + 6 devcheck scripts, including the new check-dependency-specifiers step guarding against floating dependency specifiers.

195 tests pass; bun run devcheck clean.