MCP
Prefer MCP over hunting HTTP paths. Paste the snippet in Cursor or Claude Desktop, say “log in to KashRock,” then ask in plain English. Marketing guide: /mcp.
Setup
Needs uv. Package: kashrock-mcp on PyPI.
{
"mcpServers": {
"kashrock": {
"command": "uvx",
"args": ["kashrock-mcp"]
}
}
}Optional env KASHROCK_API_KEY skips browser login. Never paste a key into chat.
Sports
cs2valorantloldota2codr6mlbbdeadlockPlans
- Sandbox — session tools + CS2 props / coverage
- Hobby — all sports, moneylines, lines, research, streams, H2H
- Builder+ — matches, live player kills/deaths/assists under 2s,
get_live_boxscore, gamelogs, finished boxscores, results, history tape
Call list_capabilities or whoami after login. Stacks are not exposed via MCP.
Tools
Session
| Tool | When | Min plan |
|---|---|---|
| login | Google sign-in; stores API key locally. | Sandbox+ |
| whoami | Your plan, quota, and unlocked drawers. | Sandbox+ |
| list_capabilities | Which tools this plan can use. | Sandbox+ |
| suggest_build | Map a one-line app goal to tools + plan. | Sandbox+ |
| list_sports | Sports KashRock covers. | Sandbox+ |
| list_books | Live book registry (DFS + Thunderpick + Kalshi + Polymarket). | Hobby+ |
| list_markets | Canonical market / moneyline names. | Sandbox+ |
| explain_error | Turn a 403/401 into plain English. | Sandbox+ |
Board
| Tool | When | Min plan |
|---|---|---|
| get_props | DFS player props only. Sandbox=CS2; Hobby+=all sports. Media on links. | Sandbox+ |
| get_player_props | DFS + sportsbook named-player props. board=dfs|main|all; filter by player or market. | Sandbox+ |
| get_moneylines | Team match moneylines from consensus lines board. | Hobby+ |
| get_lines | Consensus team mainlines across sportsbooks + prediction markets. | Hobby+ |
| get_gaps | DFS book-vs-book line spreads (same prop, different lines). | Hobby+ |
| get_coverage | Per-book prop counts / freshness. | Sandbox+ |
| get_media | Resolve player faces + team logos by name/id. | Sandbox+ |
Players & research
| Tool | When | Min plan |
|---|---|---|
| search_players | Find players by nickname. | Hobby+ |
| get_player | Player profile by id or nickname. | Hobby+ |
| get_player_stats | Canonical player stats (KPR, etc.). | Hobby+ |
| get_player_stats_full | Full aggregate: period + foundation + recent maps. | Hobby+ |
| get_rankings | Player rankings board. | Hobby+ |
| research_board | Research slips for the current board. | Hobby+ |
| research_board_tapes | Research quote tapes for the live board. | Hobby+ |
| research_player | Career tape for one player + market. | Hobby+ |
| get_streams | Live Twitch/Kick streams for a sport. | Hobby+ |
| get_team_h2h | Team head-to-head meetings from the vault. | Hobby+ |
Schedule & history
| Tool | When | Min plan |
|---|---|---|
| get_matches | Upcoming / live / finished match lists. | Builder+ |
| get_match | One match by kr_match_id or slug. | Builder+ |
| search_matches | Find a match by team names + date. | Builder+ |
| get_live_games | Games with live in-game telemetry (list game_ids). | Builder+ |
| get_live_boxscore | Live in-game K/D/A scoreboard. Omit game_id to list games. | Builder+ |
| get_live_frame | Raw live NormalizedFrame + metadata for one game_id. | Builder+ |
| get_live_events | Derived live events (kills, etc.) for one game_id. | Builder+ |
| get_gamelogs | Per-map player history for grading. | Builder+ |
| get_boxscore | Finished-match boxscore / lineup — not live KDA (use get_live_boxscore). | Builder+ |
| get_results | Settled prop grades (hit/miss/push). | Builder+ |
| get_history_tape | Quote tape for a prop/book over time. | Builder+ |