Developers

Query the iGaming world model from your own stack.

One model, five ways in. Your BI team gets SQL, your engineers get GraphQL, and your AI agents get an MCP server with the same entities, facts and history.

GraphQL: walk the graph in one request

Ask for a brand, follow its links, and read its indices, as of any date. Every fact returns its state (known, negative, unknown, conflicting, stale, derived), its type and its evidence. Unknown values come back as unknown, never as null or zero.

query {
  brand(id: "brand:4127", asOf: "2026-06-01") {
    name
    operator { name group { name } }
    licences(market: "DK") {
      regulator { name }
      validFrom
      state infoType verifiedAt
      evidence { id obsClass }
    }
    index(market: "DK") { cri cvs mom }
  }
}
{
  "brand": {
    "name": "LeoVegas",
    "operator": {
      "name": "LeoVegas Group",
      "group": { "name": "MGM Resorts" }
    },
    "licences": [ ... ],
    "index": { "cri": 81.2, "cvs": 9.4, "mom": 0.6 }
  }
}

MCP server: give your agents the model

Connect any MCP client, including Claude, to the world model. Your agents can search entities, follow links and pull indices with the same permissions as your API key. Answers can cite the facts they used.

// mcp config
{
  "mcpServers": {
    "casinorank": {
      "url": "https://mcp.casinorank.com",
      "headers": {
        "Authorization": "Bearer $CR_KEY"
      }
    }
  }
}
Tools the server exposes
search_entitiesFind brands, operators, affiliates by name or ID.
get_entityAll facts about one entity, with state, type and sources.
get_evidenceThe evidence records and lineage behind one fact.
traverseFollow links, such as brand to owner to licences.
get_indexCRI, SOV, CVS, MOM, BPI or LIC for a brand and market.
as_ofRun any tool against a past date.
compareBrands across markets, or markets across time.
recent_eventsWhat changed, filtered by market or entity.

Warehouse share: the model as tables

Enterprise licences include a live share in Snowflake or BigQuery. Facts, entities and daily indices arrive as tables your analysts can join with your own data.

select b.name, i.market, i.cvs, i.mom
from casinorank.indices_daily i
join casinorank.brands b on b.id = i.brand_id
where i.date = current_date
  and i.market in ('NL', 'DK', 'NO', 'FI')
order by i.mom desc
limit 20;

Event stream: changes as they happen

Subscribe to a webhook or stream for any entity, market or event type. Licence grants, sanctions, new domains, offer changes and rank moves arrive within minutes of entering the model.

{
  "type": "offer.changed",
  "market": "BR",
  "brand": "brand:2210",
  "before": { "bpi": 1.08 },
  "after": { "bpi": 1.31 },
  "observed_at": "2026-10-14T03:41:07Z"
}
Request an API keyRead the schema

Cookie settings