NBA Markets Desk
Kalshi NBA props and game lines vs DraftKings, FanDuel and Novig, plus who gains when a star sits.
使うべきか
品質と安全性
ツール定義とプロトコルへの準拠に関する自動分析に基づいています。
コンテキストコスト
これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。
インストール
ワンクリックインストール
これを `claude_desktop_config.json` ファイルに追加してください:
{
"mcpServers": {
"nba": {
"url": "https://predictionmarketspicks.com/api/mcp-nba/mcp?via=registry"
}
}
}リモートエンドポイント
https://predictionmarketspicks.com/api/mcp-nba/mcp?via=registrystreamable-httpできること
ツール一覧
ツール(7)
🟢nba_prop_board(team, game, player, statType, limit)
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.
入力スキーマ
{
"type": "object",
"properties": {
"team": {
"description": "Team code or name (LAL, Lakers).",
"type": "string",
"maxLength": 40
},
"game": {
"description": "Two teams, e.g. \"BOS @ DET\".",
"type": "string",
"maxLength": 60
},
"player": {
"description": "Player name (partial).",
"type": "string",
"maxLength": 60
},
"statType": {
"description": "Optional stat. One of: pts · reb · ast · threes.",
"anyOf": [
{
"type": "string"
},
{
"type": "string",
"enum": [
"pts",
"reb",
"ast",
"threes"
]
}
]
},
"limit": {
"description": "Max rows (default 15).",
"type": [
"number",
"string",
"null"
]
}
}
}🟢nba_game_board(team, game, market, limit)
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.
入力スキーマ
{
"type": "object",
"properties": {
"team": {
"description": "Team code or name (NYK, Knicks).",
"type": "string",
"maxLength": 40
},
"game": {
"description": "Two teams, e.g. \"BOS @ DET\".",
"type": "string",
"maxLength": 60
},
"market": {
"description": "Optional market. One of: moneyline · spread · total.",
"anyOf": [
{
"type": "string"
},
{
"type": "string",
"enum": [
"moneyline",
"spread",
"total"
]
}
]
},
"limit": {
"description": "Max games (default 5).",
"type": [
"number",
"string",
"null"
]
}
}
}🟢nba_injury_impact(team, game, player, stat)
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.
入力スキーマ
{
"type": "object",
"properties": {
"team": {
"description": "Team code or name (PHI, Sixers).",
"type": "string",
"maxLength": 40
},
"game": {
"description": "Two teams, e.g. \"BOS @ NYK\".",
"type": "string",
"maxLength": 60
},
"player": {
"description": "The absent player, or a teammate to look up (partial name).",
"type": "string",
"maxLength": 60
},
"stat": {
"description": "Stat to rank beneficiaries by (default points). One of: pts · reb · ast · min · usg · fg3m · stl · blk.",
"anyOf": [
{
"type": "string"
},
{
"type": "string",
"enum": [
"pts",
"reb",
"ast",
"min",
"usg",
"fg3m",
"stl",
"blk"
]
}
]
}
}
}🟢find_arbitrage(minGap)
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.
入力スキーマ
{
"type": "object",
"properties": {
"minGap": {
"description": "Minimum gap in percentage points to include (default 3 = WATCH threshold).",
"type": [
"number",
"string"
]
}
}
}🟢calculate_ev(marketPrice, yourProbability)
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.
入力スキーマ
{
"type": "object",
"properties": {
"marketPrice": {
"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%.",
"type": [
"number",
"string"
]
},
"yourProbability": {
"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%.",
"type": [
"number",
"string"
]
}
}
}出力スキーマ
{
"type": "object",
"properties": {
"tell_user": {
"description": "Show this sentence to the user first.",
"type": "string"
},
"timestamp": {
"type": "string"
},
"data_freshness": {},
"sources": {},
"needs_input": {},
"example_call": {},
"edge_pct": {
"description": "Expected-value edge, %."
},
"edge_pp": {
"description": "Your probability minus the price, pp."
},
"signal": {
"description": "BUY / SELL / SKIP."
},
"interpretation": {
"description": "Plain-English read."
},
"market_price_cents": {
"description": "Price used, cents."
},
"your_probability_pct": {
"description": "Probability used, %."
}
},
"additionalProperties": {}
}🟢kelly_size(winProbability, marketPrice, bankroll, fraction)
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".
入力スキーマ
{
"type": "object",
"properties": {
"winProbability": {
"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%.",
"type": [
"number",
"string"
]
},
"marketPrice": {
"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%.",
"type": [
"number",
"string"
]
},
"bankroll": {
"description": "Total bankroll in dollars (e.g. 1000). Optional — omit it and the result is the % of bankroll to stake, without a dollar figure.",
"type": [
"number",
"string"
]
},
"fraction": {
"description": "Kelly fraction to apply. Half-Kelly is the common sharp-money default. One of: full · half · quarter · eighth.",
"anyOf": [
{
"type": "string"
},
{
"type": "string",
"enum": [
"full",
"half",
"quarter",
"eighth"
]
}
]
}
},
"required": [
"winProbability",
"marketPrice"
]
}出力スキーマ
{
"type": "object",
"properties": {
"tell_user": {
"description": "Show this sentence to the user first.",
"type": "string"
},
"timestamp": {
"type": "string"
},
"data_freshness": {},
"sources": {},
"needs_input": {},
"example_call": {},
"stake_dollars": {
"description": "Suggested stake in dollars (when a bankroll was given)."
},
"full_kelly_pct": {
"description": "Full-Kelly fraction of bankroll, %."
},
"applied_fraction_pct": {
"description": "The fraction applied, %."
},
"rating": {
"description": "Qualitative read of the sizing."
}
},
"additionalProperties": {}
}🟢convert_probability(value, format)
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".
入力スキーマ
{
"type": "object",
"properties": {
"value": {
"description": "The numeric value to convert. Needed for a real answer, with format.",
"type": [
"number",
"string"
]
},
"format": {
"description": "Format of `value`: probability (0–100 %), american (e.g. -200 / +150), or decimal (e.g. 2.5). One of: probability · american · decimal.",
"anyOf": [
{
"type": "string"
},
{
"type": "string",
"enum": [
"probability",
"american",
"decimal"
]
}
]
}
}
}出力スキーマ
{
"type": "object",
"properties": {
"tell_user": {
"description": "Show this sentence to the user first.",
"type": "string"
},
"timestamp": {
"type": "string"
},
"data_freshness": {},
"sources": {},
"needs_input": {},
"example_call": {},
"probability_pct": {
"description": "Implied probability, %."
},
"american_odds": {
"description": "American odds, no commas."
},
"decimal_odds": {
"description": "Decimal odds."
}
},
"additionalProperties": {}
}コミュニティ
エビデンス