API

JSON over HTTPS. Structured facts with provenance — never article text.

Quick start

curl "https://intel.pulsetcg.co.uk/api/v1/events/latest?game=pokemon&limit=5"

With a key (higher rate limits, usage tracking):

curl -H "X-API-Key: tcgi_…" "https://intel.pulsetcg.co.uk/api/v1/events?status=confirmed&min_confidence=0.8"

Everything releasing in the next 90 days:

curl "https://intel.pulsetcg.co.uk/api/v1/releases/upcoming?within_days=90"

Where did a claim come from?

curl "https://intel.pulsetcg.co.uk/api/v1/events/evt_abc123/sources"

Endpoints

GET/api/v1/eventsThe main feed. All filters below apply.
GET/api/v1/events/latestNewest first — for polling.
GET/api/v1/events/{id}One event with sources, entities, facts and history.
GET/api/v1/events/{id}/sourcesProvenance only.
GET/api/v1/releases/upcomingDated sets and sealed products.
GET/api/v1/gamesGames covered, with record counts.
GET/api/v1/setsSets. Filter by game or search by name.
GET/api/v1/sets/{slug}One set, its known cards and linked events.
GET/api/v1/cardsCards.
GET/api/v1/cards/{slug}One card.
GET/api/v1/productsSealed products.
GET/api/v1/products/{slug}One product.
GET/api/v1/search?q=One query across events and the catalogue.
GET/api/v1/sourcesEvery monitored source and its trust weight.
GET/api/v1/meWhat your key is entitled to and what it has used.
GET/healthService health. 200 healthy, 503 degraded.
POST/api/mcpMCP endpoint (JSON-RPC 2.0 over Streamable HTTP).

Filters (/api/v1/events)

gamepokemon | magic-the-gathering | yugioh | one-piece | lorcana
event_typeset_announcement | card_reveal | release_date | product_announcement | ban | unban | rules_change | tournament_result | …
statusconfirmed | reported | rumour | disputed | retracted
regionglobal | na | eu | uk | jp | asia | oceania | latam
from / toYYYY-MM-DD — filters on the event date
sinceYYYY-MM-DD — filters on when it was first reported
min_confidence0–1
official_onlytrue — only events with a first-party publisher source
qfree text over title and summary
ordernewest | upcoming | confidence
include_demotrue — include demo records (excluded by default)
limit / offsetpagination; limit max 100

Repeat a parameter or comma-separate it for multiple values: ?game=pokemon,lorcana

Response shape

Every list endpoint returns the same envelope:

{
  "data": [ … ],
  "meta": { "total": 412, "limit": 25, "offset": 0, "hasMore": true }
}

Errors always carry a machine-readable code:

{ "error": { "code": "rate_limited", "message": "Rate limit of 30 requests/minute exceeded." } }

Reading the data correctly

  • statusconfirmed means a first-party publisher stated it. reported means outlets state it as fact without official confirmation. rumour means a leak or speculation. Never present a rumour as fact.
  • confidence — 0–1, recomputed from scratch each time a source is attached. confidenceFactors shows what produced it.
  • occurredPrecision — when it is month, only a month was stated; the day in occurredAt is a placeholder, not a claim.
  • independentDomains — distinct publishers, not distinct URLs. Three syndicated copies of one story count once.
  • isDemo — written for this repository, not real news. Excluded unless you pass include_demo=true.

Authentication and limits

Send your key as X-API-Key: tcgi_… or Authorization: Bearer tcgi_…. Rate limit headers are returned on every response.

TierRequests/minRequests/monthScopes
Free305,000read
Developer120100,000read
Pro6001,000,000read, bulk
Commercial1,20010,000,000read, bulk, redistribute

Billing is not implemented. Tiers exist so limits, quotas and scopes are already per-key; enabling paid plans is a matter of wiring a payment webhook to a row update.

MCP (AI agents)

Add this deployment as an MCP server over Streamable HTTP:

{
  "mcpServers": {
    "tcg-intelligence": {
      "type": "http",
      "url": "https://intel.pulsetcg.co.uk/api/mcp",
      "headers": { "X-API-Key": "tcgi_…" }
    }
  }
}

Tools exposed:

  • search_tcg_events
  • get_latest_events
  • get_upcoming_releases
  • search_cards
  • get_card
  • get_set
  • get_product
  • get_event_sources
  • list_games
API documentation · TCG Intelligence