Kalshi NBA props and game lines vs DraftKings, FanDuel and Novig, plus who gains when a star sits.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Use for "is this contract mispriced" and "what is my edge". Give a Kalshi or Polymarket price in cents and your own probability; returns the % expected-value edge and a BUY / SELL / SKIP read.
Current contract price in cents (1–99), equal to the implied probability in %. Required for a real answer. Accepts 55, "55%", "55¢", "$0.55", 0.55 or American odds (+120 / -150) — all read as 55%.
Your own estimate of the true probability the contract resolves YES, in % (0–100). Required for a real answer. Accepts 55, "55%", "55¢", "$0.55", 0.55 or American odds (+120 / -150) — all read as 55%.
Tool list last changed Oct 25, 2026.
Use for "is this contract mispriced" and "what is my edge". Give a Kalshi or Polymarket price in cents and your own probability; returns the % expected-value edge and a BUY / SELL / SKIP read.
| Argument | Type | Description |
|---|---|---|
| marketPrice | number | string | Current contract price in cents (1–99), equal to the implied probability in %. Required for a real answer. Accepts 55, "55%", "55¢", "$0.55", 0.55 or American odds (+120 / -150) — all read as 55%. |
| yourProbability | number | string | Your own estimate of the true probability the contract resolves YES, in % (0–100). Required for a real answer. Accepts 55, "55%", "55¢", "$0.55", 0.55 or American odds (+120 / -150) — all read as 55%. |
{
"type": "object",
"properties": {
"marketPrice": {
"type": [
"number",
"string"
],
"description": "Current contract price in cents (1–99), equal to the implied probability in %. Required for a real answer. Accepts 55, \"55%\", \"55¢\", \"$0.55\", 0.55 or American odds (+120 / -150) — all read as 55%."
},
"yourProbability": {
"type": [
"number",
"string"
],
"description": "Your own estimate of the true probability the contract resolves YES, in % (0–100). Required for a real answer. Accepts 55, \"55%\", \"55¢\", \"$0.55\", 0.55 or American odds (+120 / -150) — all read as 55%."
}
}
}Convert between implied probability, American odds, and decimal odds. Give one value and its format and get all three back (American odds carry no commas, e.g. +441 or -200). Use for "what is +150 as a probability", "convert 62% to American odds", "decimal to implied odds".
| Argument | Type | Description |
|---|---|---|
| value | number | string | The numeric value to convert. Needed for a real answer, with format. |
| format | any | Format of `value`: probability (0–100 %), american (e.g. -200 / +150), or decimal (e.g. 2.5). One of: probability · american · decimal. |
{
"type": "object",
"properties": {
"value": {
"type": [
"number",
"string"
],
"description": "The numeric value to convert. Needed for a real answer, with format."
},
"format": {
"anyOf": [
{
"type": "string"
},
{
"enum": [
"probability",
"american",
"decimal"
],
"type": "string"
}
],
"description": "Format of `value`: probability (0–100 %), american (e.g. -200 / +150), or decimal (e.g. 2.5). One of: probability · american · decimal."
}
}
}Use for "where is the arbitrage" and "Kalshi vs Polymarket price gaps". Cross-venue gaps on the same NFL, NBA, NHL or MLB game: Kalshi against Polymarket US (the exchange US traders use, fees included), Polymarket international as a reference. Gap in pp, WATCH/ARB signal, cheaper venue, settlement_match; near misses when nothing clears. Free: the top 3 gaps in full; Pro returns the whole board.
| Argument | Type | Description |
|---|---|---|
| minGap | number | string | Minimum gap in percentage points to include (default 3 = WATCH threshold). |
{
"type": "object",
"properties": {
"minGap": {
"type": [
"number",
"string"
],
"description": "Minimum gap in percentage points to include (default 3 = WATCH threshold)."
}
}
}Compute the optimal Kelly position size for a prediction-market contract. Given your win probability, the market price (which sets the payout), your bankroll, and a Kelly fraction (full / half / quarter / eighth), returns the dollar stake and a risk rating. Use for "how much should I stake", "what is my position size", "Kelly sizing for this trade".
| Argument | Type | Description |
|---|---|---|
| bankroll | number | string | Total bankroll in dollars (e.g. 1000). Optional — omit it and the result is the % of bankroll to stake, without a dollar figure. |
| fraction | any | Kelly fraction to apply. Half-Kelly is the common sharp-money default. One of: full · half · quarter · eighth. |
| marketPrice* | number | string | Contract price in cents (1–99). Sets the payout ratio. Accepts 55, "55%", "55¢", "$0.55", 0.55 or American odds (+120 / -150) — all read as 55%. |
| winProbability* | number | string | Your probability the contract resolves YES, in % (0–100). Accepts 55, "55%", "55¢", "$0.55", 0.55 or American odds (+120 / -150) — all read as 55%. |
{
"type": "object",
"required": [
"winProbability",
"marketPrice"
],
"properties": {
"bankroll": {
"type": [
"number",
"string"
],
"description": "Total bankroll in dollars (e.g. 1000). Optional — omit it and the result is the % of bankroll to stake, without a dollar figure."
},
"fraction": {
"anyOf": [
{
"type": "string"
},
{
"enum": [
"full",
"half",
"quarter",
"eighth"
],
"type": "string"
}
],
"description": "Kelly fraction to apply. Half-Kelly is the common sharp-money default. One of: full · half · quarter · eighth."
},
"marketPrice": {
"type": [
"number",
"string"
],
"description": "Contract price in cents (1–99). Sets the payout ratio. Accepts 55, \"55%\", \"55¢\", \"$0.55\", 0.55 or American odds (+120 / -150) — all read as 55%."
},
"winProbability": {
"type": [
"number",
"string"
],
"description": "Your probability the contract resolves YES, in % (0–100). Accepts 55, \"55%\", \"55¢\", \"$0.55\", 0.55 or American odds (+120 / -150) — all read as 55%."
}
}
}Use for "Knicks moneyline on Kalshi vs the books" and "cheapest place for the Celtics spread tonight". Kalshi NBA moneyline, spread and total beside DraftKings, FanDuel, BetRivers, Fanatics, ESPN, Novig and ProphetX at the same line: the cheapest venue per side, Kalshi fee included. Market prices only, no model.
| Argument | Type | Description |
|---|---|---|
| game | string | Two teams, e.g. "BOS @ DET". |
| team | string | Team code or name (NYK, Knicks). |
| limit | number | string | null | Max games (default 5). |
| market | any | Optional market. One of: moneyline · spread · total. |
{
"type": "object",
"properties": {
"game": {
"type": "string",
"maxLength": 60,
"description": "Two teams, e.g. \"BOS @ DET\"."
},
"team": {
"type": "string",
"maxLength": 40,
"description": "Team code or name (NYK, Knicks)."
},
"limit": {
"type": [
"number",
"string",
"null"
],
"description": "Max games (default 5)."
},
"market": {
"anyOf": [
{
"type": "string"
},
{
"enum": [
"moneyline",
"spread",
"total"
],
"type": "string"
}
],
"description": "Optional market. One of: moneyline · spread · total."
}
}
}Use for "Embiid's out tonight — who benefits?" and "who's out in the NBA today". Today's NBA absences from the official injury report, and for each absent star the teammates whose minutes, points, rebounds, assists and usage rose in past games without him (last two seasons, sample size on every row), beside today's Kalshi prop prices. Questionable players fork into plays/sits branches until ruled. Historical splits only, no projection.
| Argument | Type | Description |
|---|---|---|
| game | string | Two teams, e.g. "BOS @ NYK". |
| stat | any | Stat to rank beneficiaries by (default points). One of: pts · reb · ast · min · usg · fg3m · stl · blk. |
| team | string | Team code or name (PHI, Sixers). |
| player | string | The absent player, or a teammate to look up (partial name). |
{
"type": "object",
"properties": {
"game": {
"type": "string",
"maxLength": 60,
"description": "Two teams, e.g. \"BOS @ NYK\"."
},
"stat": {
"anyOf": [
{
"type": "string"
},
{
"enum": [
"pts",
"reb",
"ast",
"min",
"usg",
"fg3m",
"stl",
"blk"
],
"type": "string"
}
],
"description": "Stat to rank beneficiaries by (default points). One of: pts · reb · ast · min · usg · fg3m · stl · blk."
},
"team": {
"type": "string",
"maxLength": 40,
"description": "Team code or name (PHI, Sixers)."
},
"player": {
"type": "string",
"maxLength": 60,
"description": "The absent player, or a teammate to look up (partial name)."
}
}
}Use for "where is LeBron's points line cheapest tonight". Every Kalshi NBA player-prop strike (points, rebounds, assists, threes) beside DraftKings, FanDuel, BetRivers, Fanatics, ESPN, Novig and ProphetX at the same strike: the cheapest venue per side, Kalshi fee included. Market prices only, no model.
| Argument | Type | Description |
|---|---|---|
| game | string | Two teams, e.g. "BOS @ DET". |
| team | string | Team code or name (LAL, Lakers). |
| limit | number | string | null | Max rows (default 15). |
| player | string | Player name (partial). |
| statType | any | Optional stat. One of: pts · reb · ast · threes. |
{
"type": "object",
"properties": {
"game": {
"type": "string",
"maxLength": 60,
"description": "Two teams, e.g. \"BOS @ DET\"."
},
"team": {
"type": "string",
"maxLength": 40,
"description": "Team code or name (LAL, Lakers)."
},
"limit": {
"type": [
"number",
"string",
"null"
],
"description": "Max rows (default 15)."
},
"player": {
"type": "string",
"maxLength": 60,
"description": "Player name (partial)."
},
"statType": {
"anyOf": [
{
"type": "string"
},
{
"enum": [
"pts",
"reb",
"ast",
"threes"
],
"type": "string"
}
],
"description": "Optional stat. One of: pts · reb · ast · threes."
}
}
}