News Brief with Sources

Topic in, deduplicated story clusters out: headline, every outlet URL and first-seen time, from GDELT and publisher RSS. Headlines and links only, no article text. Not charged when nothing matches or sources fail.

Price: $0.0101 per call, USDC on Base (x402). Also available as the MCP tool news_brief at https://grokzilla.shop/mcp.

Topic in, deduplicated story clusters out. Sources: the GDELT 2.0 DOC API and a fixed list of publisher RSS feeds (BBC, NPR, The Guardian, Al Jazeera, France 24, Sky News, CBS, ABC, The New York Times, TechCrunch, Ars Technica, The Verge, Wired, Engadget, CoinDesk, Cointelegraph, Decrypt). Headlines and links only: no article text, description or image is republished. Open the outlet URL for the story.

Headlines are grouped when their words overlap (Jaccard ≥ 0.45). Clusters with more outlets come first. GDELT rate-limits shared IPs; when it does not answer, results come from RSS only and warnings says so.

Call

POST /api/skills/news-brief

{"topic": "bitcoin", "timespan": "3d", "max_clusters": 2}

Not charged

Every non-200 has charged: false and is never settled.

Response (paid 200)

Same envelope on every data service: ok, service, version, summary, data, confidence, sources, generated_at, data_as_of, charged, warnings, next.

{
  "ok": true,
  "skill": "news_brief",
  "service": "news_brief",
  "version": "1.0.0",
  "summary": "2 stories on 'bitcoin'; top: Don’t Let a Crypto Inheritance Get Stuck on the Blockchain",
  "data": {
    "topic": "bitcoin",
    "terms": [
      "bitcoin"
    ],
    "timespan": "3d",
    "clusters": [
      {
        "headline": "Don’t Let a Crypto Inheritance Get Stuck on the Blockchain",
        "first_seen": "2026-10-17T10:30:00Z",
        "latest": "2026-10-17T10:30:00Z",
        "outlet_count": 1,
        "outlets": [
          {
            "outlet": "Wired",
            "headline": "Don’t Let a Crypto Inheritance Get Stuck on the Blockchain",
            "url": "https://www.wired.com/story/crypto-inheritance-how-to/",
            "seen_at": "2026-10-17T10:30:00Z",
            "via": "rss"
          }
        ]
      },
      {
        "headline": "‘Wow, it’s a real discovery’: Claude cracks a 25-year NSA number mystery",
        "first_seen": "2026-10-17T06:39:48Z",
        "latest": "2026-10-17T06:39:48Z",
        "outlet_count": 1,
        "outlets": [
          {
            "outlet": "CoinDesk",
            "headline": "‘Wow, it’s a real discovery’: Claude cracks a 25-year NSA number mystery",
            "url": "https://www.coindesk.com/tech/2026/10/17/wow-it-s-a-real-discovery-claude-cracks-a-25-year-nsa-number-mystery",
            "seen_at": "2026-10-17T06:39:48Z",
            "via": "rss"
          }
        ]
      }
    ],
    "cluster_count": 2,
    "headline_count": 2,
    "searched": {
      "gdelt": false,
      "feeds_ok": 22,
      "feeds_total": 22
    }
  },
  "confidence": 0.7,
  "sources": [
    {
      "name": "Wired",
      "url": "https://www.wired.com/feed/rss",
      "fetched_at": "2026-10-17T11:12:49Z"
    },
    {
      "name": "CoinDesk",
      "url": "https://www.coindesk.com/arc/outboundfeeds/rss/",
      "fetched_at": "2026-10-17T11:12:49Z"
    }
  ],
  "generated_at": "2026-10-17T11:12:56Z",
  "data_as_of": "2026-10-17T11:12:49Z",
  "charged": true,
  "warnings": [
    "headlines and links only; open the outlet URL for the article",
    "GDELT did not answer in time (it rate-limits shared IPs); results come from publisher RSS only"
  ],
  "next": [
    "url_to_markdown"
  ],
  "note": "Headlines and links only. No article text is republished."
}