kalshi_milestones

Pack: kalshi · Endpoint: https://gateway.pipeworx.io/kalshi/mcp

Real-world occurrences Kalshi tracks — games, elections — and the events tied to each, from Kalshi.

Tool description as the model sees it

Kalshi’s own index of the real-world OCCURRENCES its markets hang off — games, elections, hearings, launches — from GET /milestones. Each milestone carries a title, type (e.g. baseball_game, football_game, tennis_tournament_singles, election), category, start and end dates, source ids, and — the reason to use this — primary_event_tickers and related_event_tickers, which are Kalshi’s OWN statement of which markets belong to the occurrence. That is the alternative to matching event titles by string, which is how you accidentally group two different games. Filter by category (“Sports”, “Elections”, …), type, competition, related_event_ticker (reverse lookup: which milestone is this event part of?) or minimum_start_date; page with cursor. A milestone id is also the key for kalshi_game_stats.

Parameters

NameTypeRequiredDescription
categorystringnoKalshi category, exact words, e.g. “Sports” | “Elections” | “Economics” | “Politics”.
typestringnoMilestone type, e.g. “baseball_game”, “football_game”, “basketball_game”, “tennis_tournament_singles”, “soccer_tournament_multi_leg”.
competitionstringnoCompetition filter, e.g. “NFL”, “NBA” (Kalshi’s own spelling; many milestones carry none).
related_event_tickerstringnoReverse lookup — return milestones linked to this event ticker.
minimum_start_datestringnoRFC3339 timestamp; only milestones starting at or after it. Kalshi’s default page is dominated by historical milestones, so pass this to see current ones.
limitnumberno1-200 (default 50). Kalshi requires this parameter; we always send it.
cursorstringnoPagination cursor from a previous response.

Example call

Arguments

{
  "category": "Sports",
  "minimum_start_date": "2026-09-14T00:00:00Z",
  "limit": 3
}

curl

curl -X POST https://gateway.pipeworx.io/kalshi/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"kalshi_milestones","arguments":{"category":"Sports","minimum_start_date":"2026-09-14T00:00:00Z","limit":3}}}'

TypeScript (@pipeworx/sdk)

import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();

const result = await pipeworx.call('kalshi_milestones', {
  "category": "Sports",
  "minimum_start_date": "2026-09-14T00:00:00Z",
  "limit": 3
});

Connect

Add this to your MCP client config, or use one-click install buttons:

{
  "mcpServers": {
    "kalshi": {
      "url": "https://gateway.pipeworx.io/kalshi/mcp"
    }
  }
}

See Getting Started for client-specific install steps.

Regenerated from source · build September 16, 2026