
PropLine — Sports Betting Odds & Prop Resolution
Connects Claude to PropLine's sports betting API with 13 tools that pull live odds across 16 sportsbooks, graded player prop outcomes, and cross-book positive expected value calculations. You can ask natural language questions about prop histories, closing line value, first-quarter totals, or which book has the best line on a specific player market, and the model picks the right endpoint. Free tier gives you odds and scores; Pro unlocks resolution data and EV analysis. Useful if you're building betting research workflows or want to compare DFS projections against traditional sportsbook lines without writing API wrappers.
- GitHub stars
- 1
- tools
- 43
- auth
- Secret needed
- transport
- STDIO, HTTP
- env vars
- 2
- last updated
- Nov 10, 2026
Install
From registry metadata$ npx add-mcp https://mcp.prop-line.com/mcp --name propline-mcp --header 'Authorization: Bearer ${API_TOKEN}'Run in your terminal. add-mcp asks which agents to add it to, then asks for each value it needs. Add -g to install it for every project.
Review the command, arguments and environment values before installing. MCP servers run with your local permissions.
Other ways
Claude Code
$ claude mcp add --transport http propline-mcp https://mcp.prop-line.com/mcp --header 'Authorization: YOUR_AUTHORIZATION'Run in your terminal. Add --scope user to make it available in every project.
Tools
Verified live · 43 toolsVerified live against the running server on Nov 6, 2026.
propline_list_sportsList all sports PropLine currently polls. Returns sport keys (e.g. baseball_mlb, basketball_nba, soccer_epl) along with human titles and active status. Use this first to discover what sport_key values are valid for the other tools.
List all sports PropLine currently polls. Returns sport keys (e.g. baseball_mlb, basketball_nba, soccer_epl) along with human titles and active status. Use this first to discover what sport_key values are valid for the other tools.
No parameters. Call it with no arguments.
propline_list_eventsList upcoming events for a sport. Returns each event's id, home_team, away_team, commence_time. Use the returned event_id to drill into per-event odds, props, +EV, or results.2 params
List upcoming events for a sport. Returns each event's id, home_team, away_team, commence_time. Use the returned event_id to drill into per-event odds, props, +EV, or results.
livebooleansport_key*stringpropline_list_event_marketsList the market types available for a specific event (e.g. h2h, spreads, totals, player_points, pitcher_strikeouts). Useful when you don't know which prop markets a given event carries.2 params
List the market types available for a specific event (e.g. h2h, spreads, totals, player_points, pitcher_strikeouts). Useful when you don't know which prop markets a given event carries.
event_id*string | numbersport_key*stringpropline_get_oddsGet live odds. If event_id is supplied, returns full per-event props for that event; otherwise returns bulk game-line odds for the whole sport. Pass markets as a comma-separated list (e.g. 'h2h,spreads,totals' or 'player_points,player_rebounds'). Response includes a bookmakers...8 params
Get live odds. If event_id is supplied, returns full per-event props for that event; otherwise returns bulk game-line odds for the whole sport. Pass markets as a comma-separated list (e.g. 'h2h,spreads,totals' or 'player_points,player_rebounds'). Response includes a bookmakers...
bookmakersstringevent_idstring | numberinclude_book_idsbooleaninclude_depthbooleaninclude_linksbooleanmarketsstringperiodstringsport_key*stringpropline_get_odds_historyHobby+ endpoint. Returns the historical line-movement snapshot series for an event (every recorded price/point change per outcome over the event's lifetime). Free tier returns market structure with redacted snapshots and an upgrade pointer. Supports period-historical filters:...11 params
Hobby+ endpoint. Returns the historical line-movement snapshot series for an event (every recorded price/point change per outcome over the event's lifetime). Free tier returns market structure with redacted snapshots and an upgrade pointer. Supports period-historical filters:...
bookmakersstringchanges_onlybooleanevent_id*string | numberfromstringintervalstring30s · 1m · 5m · 15m · 30m · 1hmarketsstringperiodstringrelative_fromstringrelative_tostringsport_key*stringtostringpropline_get_odds_closingHobby+ endpoint. Returns the OPENING and CLOSING line per (book, market, outcome) for an event. Closing = the last snapshot at or before commence_time (price/point/closing_at); opening = the first snapshot PropLine holds for the outcome, however far before kickoff the book pos...6 params
Hobby+ endpoint. Returns the OPENING and CLOSING line per (book, market, outcome) for an event. Closing = the last snapshot at or before commence_time (price/point/closing_at); opening = the first snapshot PropLine holds for the outcome, however far before kickoff the book pos...
bookmakersstringevent_id*string | numbermarketsstringopening_windowstring | numberperiodstringsport_key*stringpropline_grade_clvHobby+ endpoint. Grades PLACED bets against their closing lines. Closing line value is the only durable proxy for whether a bettor has edge: did the price they took beat the number the market settled on? Send the bets and each comes back with its closing price, the de-vigged c...2 params
Hobby+ endpoint. Grades PLACED bets against their closing lines. Closing line value is the only durable proxy for whether a bettor has edge: did the price they took beat the number the market settled on? Send the bets and each comes back with its closing price, the de-vigged c...
bets*arraydevigstringmultiplicative · shinpropline_settle_betsHobby+ endpoint. Settles PLACED bets, singles or parlays, against final results: each comes back won, lost, push, void, half_won or half_lost, with actual_value (the stat or score it settled on), payout (stake included) and profit, plus a summary. The book and the line are fre...1 params
Hobby+ endpoint. Settles PLACED bets, singles or parlays, against final results: each comes back won, lost, push, void, half_won or half_lost, with actual_value (the stat or score it settled on), payout (stake included) and profit, plus a summary. The book and the line are fre...
bets*arraypropline_price_parlayHobby+ endpoint. Fair price of a parlay across games (2-15 legs), from the same no-vig fair lines as propline_get_event_ev. Returns fair_price for the parlay, each leg's fair_price and best price + book, best_legs_price, books (every book that prices all the legs: the product...3 params
Hobby+ endpoint. Fair price of a parlay across games (2-15 legs), from the same no-vig fair lines as propline_get_event_ev. Returns fair_price for the parlay, each leg's fair_price and best price + book, best_legs_price, books (every book that prices all the legs: the product...
devigstringmultiplicative · shinlegs*arraypricenumberpropline_price_sgpHobby+ endpoint. Prices a same-game parlay at the BOOK'S OWN correlated odds — the price a FanDuel customer would be offered for that exact slip right now, not a model of it. bookmaker is fanduel (default, its own pricer), draftkings (its SGP widget's pricer), betonlineag / lo...4 params
Hobby+ endpoint. Prices a same-game parlay at the BOOK'S OWN correlated odds — the price a FanDuel customer would be offered for that exact slip right now, not a model of it. bookmaker is fanduel (default, its own pricer), draftkings (its SGP widget's pricer), betonlineag / lo...
bookmakerstringevent_id*string | numberlegs*arraysport_key*stringpropline_export_odds_historyBackfill-pass / Enterprise only. Bulk line-movement tick history as CSV — every recorded odds snapshot (price + line, per book, including period markets) across a whole sport, one row per (outcome, snapshot). This is the raw firehose no subscription tier can bulk-pull (Pro/Str...5 params
Backfill-pass / Enterprise only. Bulk line-movement tick history as CSV — every recorded odds snapshot (price + line, per book, including period markets) across a whole sport, one row per (outcome, snapshot). This is the raw firehose no subscription tier can bulk-pull (Pro/Str...
bookmakerstringmarketstringsince*stringsport_key*stringuntil*stringpropline_get_futuresFree-tier endpoint. Returns season-long futures (outright) markets for a sport — championship/Super Bowl/division/conference winners, MVP and award winners, season win totals — aggregated across Bovada, FanDuel, DraftKings, Pinnacle, and Kalshi. One row per (futures event, boo...1 params
Free-tier endpoint. Returns season-long futures (outright) markets for a sport — championship/Super Bowl/division/conference winners, MVP and award winners, season win totals — aggregated across Bovada, FanDuel, DraftKings, Pinnacle, and Kalshi. One row per (futures event, boo...
sport_key*stringpropline_get_scoresFree-tier endpoint. Returns recent and live game scores plus status (scheduled, live, final) for a sport. Useful for: 'is this game over yet, what was the final score'.2 params
Free-tier endpoint. Returns recent and live game scores plus status (scheduled, live, final) for a sport. Useful for: 'is this game over yet, what was the final score'.
days_fromnumbersport_key*stringpropline_get_dfs_payoutsFree-tier reference math. Returns the PrizePicks Power Play (all legs must hit) and Flex Play (partial payouts) entry payout schedule for 2-6 legs, plus the per-leg breakeven win probability for each play. Pass leg_win_prob (e.g. 0.58) to also get expected_return (per $1) and...1 params
Free-tier reference math. Returns the PrizePicks Power Play (all legs must hit) and Flex Play (partial payouts) entry payout schedule for 2-6 legs, plus the per-leg breakeven win probability for each play. Pass leg_win_prob (e.g. 0.58) to also get expected_return (per $1) and...
leg_win_probnumberpropline_get_mlb_grand_salamiFree-tier endpoint. Returns the synthetic daily MLB Grand Salami for a given UTC date — total runs scored across every MLB game on the slate plus each book's implied Grand Salami line (median of per-game primary totals across our MLB books incl. Pinnacle, Polymarket, Matchbook...1 params
Free-tier endpoint. Returns the synthetic daily MLB Grand Salami for a given UTC date — total runs scored across every MLB game on the slate plus each book's implied Grand Salami line (median of per-game primary totals across our MLB books incl. Pinnacle, Polymarket, Matchbook...
datestringpropline_get_nhl_daily_goals_totalFree-tier endpoint. Returns the synthetic daily NHL goals total (hockey's equivalent of the MLB Grand Salami) for a given US Eastern date — total goals scored across every NHL game on the slate (including OT/SO) plus each book's implied Daily Goals Total line (median of per-ga...1 params
Free-tier endpoint. Returns the synthetic daily NHL goals total (hockey's equivalent of the MLB Grand Salami) for a given US Eastern date — total goals scored across every NHL game on the slate (including OT/SO) plus each book's implied Daily Goals Total line (median of per-ga...
datestringpropline_get_resolution_summaryFree-tier endpoint. Returns the factual volume of player props PropLine has graded against real box scores over the last N days (aggregated counts only): total graded/settled, games, sports covered, plus per-sport and top-market breakdowns. Useful for: 'how much graded prop da...1 params
Free-tier endpoint. Returns the factual volume of player props PropLine has graded against real box scores over the last N days (aggregated counts only): total graded/settled, games, sports covered, plus per-sport and top-market breakdowns. Useful for: 'how much graded prop da...
daysnumberpropline_get_event_idsFree-tier endpoint. Id crosswalk for one sport: one object per event from 3 days ago to 30 days ahead with PropLine's event id, commence_time, teams (+ team keys/ids), espn_event_id, mlb_game_pk, merged_from_event_ids, and each sportsbook's own event id + link under books. Use...1 params
Free-tier endpoint. Id crosswalk for one sport: one object per event from 3 days ago to 30 days ahead with PropLine's event id, commence_time, teams (+ team keys/ids), espn_event_id, mlb_game_pk, merged_from_event_ids, and each sportsbook's own event id + link under books. Use...
sport_key*stringpropline_lookup_event_idsFree-tier endpoint. Reverse id lookup: give a sportsbook's own event id (book + book_event_id, e.g. book='pinnacle'), an ESPN event id or an MLB gamePk and get PropLine's event back with its full id crosswalk, status, completed flag and final score. Any date. Up to 50 comma-se...4 params
Free-tier endpoint. Reverse id lookup: give a sportsbook's own event id (book + book_event_id, e.g. book='pinnacle'), an ESPN event id or an MLB gamePk and get PropLine's event back with its full id crosswalk, status, completed flag and final score. Any date. Up to 50 comma-se...
bookstringbook_event_idstringespn_event_idstringmlb_game_pkstringpropline_get_book_accuracyFree-tier endpoint. How well each sportsbook prices player props: each book's closing prop prices are de-vigged and scored (Brier) against the real result and against the other books on the same line. Per book: props scored, brier, consensus_brier, skill_bp (> 0 = closer to th...2 params
Free-tier endpoint. How well each sportsbook prices player props: each book's closing prop prices are de-vigged and scored (Brier) against the real result and against the other books on the same line. Per book: props scored, brier, consensus_brier, skill_bp (> 0 = closer to th...
daysnumbersportstringpropline_get_golf_roundsFree-tier endpoint. A golfer's completed rounds, newest first, with strokes, score to par and hole counts (eagles, birdies, pars, bogeys, doubles), plus last-5/10/20 averages. Every player in the field, back to 2024; a round in progress is never included. Filter by tour (pga,...4 params
Free-tier endpoint. A golfer's completed rounds, newest first, with strokes, score to par and hole counts (eagles, birdies, pars, bogeys, doubles), plus last-5/10/20 averages. Every player in the field, back to 2024; a round in progress is never included. Filter by tour (pga,...
limitnumberplayer*stringsincestringtourstringpropline_get_golf_tournamentsFree-tier endpoint. Golf tournaments we hold round data for, newest first, with player and round counts. Filter by tour (pga, dp_world, liv, lpga, korn_ferry, champions) and season.3 params
Free-tier endpoint. Golf tournaments we hold round data for, newest first, with player and round counts. Filter by tour (pga, dp_world, liv, lpga, korn_ferry, champions) and season.
limitnumberseasonnumbertourstringpropline_get_injuriesFree-tier endpoint. The current injury report for NFL, NCAAF, NBA, WNBA, NHL or MLB: each listed player with status (Out, Questionable, Day-To-Day, 15-Day-IL...), status_code, injury, expected return and status_since (when the current status began). Source: ESPN, every 10 minu...3 params
Free-tier endpoint. The current injury report for NFL, NCAAF, NBA, WNBA, NHL or MLB: each listed player with status (Out, Questionable, Day-To-Day, 15-Day-IL...), status_code, injury, expected return and status_since (when the current status began). Source: ESPN, every 10 minu...
sport_key*stringstatusstringteamstringpropline_get_injury_historyFree-tier endpoint. Every injury status change in a sport over the last 1-90 days, newest first: old_status -> new_status with the time we saw it (new_status null = came off the report). History starts 2026-10-18. Pair with odds history to see how lines moved on a ruling.3 params
Free-tier endpoint. Every injury status change in a sport over the last 1-90 days, newest first: old_status -> new_status with the time we saw it (new_status null = came off the report). History starts 2026-10-18. Pair with odds history to see how lines moved on a ruling.
daysnumberplayerstringsport_key*stringpropline_get_refereesFree-tier endpoint. Card stats per referee: graded matches, yellow and red cards, cards per match, last match and next appointment. 32 soccer leagues (Premier League, La Liga, Serie A, Bundesliga, Ligue 1, MLS, Championship, Eredivisie, Liga MX, Brasileirao, UEFA cups, Liberta...4 params
Free-tier endpoint. Card stats per referee: graded matches, yellow and red cards, cards per match, last match and next appointment. 32 soccer leagues (Premier League, La Liga, Serie A, Bundesliga, Ligue 1, MLS, Championship, Eredivisie, Liga MX, Brasileirao, UEFA cups, Liberta...
searchstringsincestringsport_key*stringuntilstringpropline_get_referee_matchesFree-tier endpoint. One referee's summary plus their matches, newest first, with each team's yellow and red cards (null until graded) and upcoming appointments. Same 32 soccer leagues as propline_get_referees. Get exact names from propline_get_referees.5 params
Free-tier endpoint. One referee's summary plus their matches, newest first, with each team's yellow and red cards (null until graded) and upcoming appointments. Same 32 soccer leagues as propline_get_referees. Get exact names from propline_get_referees.
limitnumbername*stringsincestringsport_key*stringuntilstringpropline_get_market_coverageFree-tier endpoint. Every market each book is pricing on a sport's games in the next N days, and on how many of those games. Returns the game count and, per book, game_lines and props entries {market, period, events, markets, last_update}. Useful for: 'which books have NFL pla...3 params
Free-tier endpoint. Every market each book is pricing on a sport's games in the next N days, and on how many of those games. Returns the game count and, per book, game_lines and props entries {market, period, events, markets, last_update}. Useful for: 'which books have NFL pla...
daysnumberperiodsbooleansport_key*stringpropline_get_history_coverageFree-tier endpoint. When each book's odds history starts for a sport: history_start, game_lines_start, props_start, latest_event, event count, and whether the book is retired. Useful for: 'how far back do we have Fanatics MLB props'.1 params
Free-tier endpoint. When each book's odds history starts for a sport: history_start, game_lines_start, props_start, latest_event, event count, and whether the book is retired. Useful for: 'how far back do we have Fanatics MLB props'.
sport_key*stringpropline_get_event_statsBook-agnostic raw box-score stats for an event. Returns per-player stats (e.g. strikeouts, hits, points, rebounds, shots-on-goal) decoupled from any sportsbook's lines. LIVE during games for major US sports (MLB + WNBA now; NFL, NCAAF, NBA, NHL at season start): while the even...2 params
Book-agnostic raw box-score stats for an event. Returns per-player stats (e.g. strikeouts, hits, points, rebounds, shots-on-goal) decoupled from any sportsbook's lines. LIVE during games for major US sports (MLB + WNBA now; NFL, NCAAF, NBA, NHL at season start): while the even...
event_id*string | numbersport_key*stringpropline_get_event_resultsPro-tier endpoint. Returns graded prop outcomes for a completed event — every Over/Under marked won, lost, push, or void with the actual stat value next to the line. The single most distinctive feature vs the-odds-api: they don't grade props at any tier. Free tier returns the...4 params
Pro-tier endpoint. Returns graded prop outcomes for a completed event — every Over/Under marked won, lost, push, or void with the actual stat value next to the line. The single most distinctive feature vs the-odds-api: they don't grade props at any tier. Free tier returns the...
bookmakersstringevent_id*string | numbermarketsstringsport_key*stringpropline_get_event_contextGame context for an event — the conditions a prop settles under. MLB: probable starting pitchers and their throwing hand (L/R/S — platoon-split context for every batter prop), a confirmed-lineup flag, the home-plate umpire, and first-pitch weather (temperature, wind, precipita...2 params
Game context for an event — the conditions a prop settles under. MLB: probable starting pitchers and their throwing hand (L/R/S — platoon-split context for every batter prop), a confirmed-lineup flag, the home-plate umpire, and first-pitch weather (temperature, wind, precipita...
event_id*string | numbersport_key*stringpropline_get_event_movementLine movement + steam detection from the snapshot tick history. Per (book, market, outcome): opening line, latest line, signed implied-probability shift, point shift, direction. The steam[] array flags outcomes that multiple books moved the same direction — the classic sharp-m...7 params
Line movement + steam detection from the snapshot tick history. Per (book, market, outcome): opening line, latest line, signed implied-probability shift, point shift, direction. The steam[] array flags outcomes that multiple books moved the same direction — the classic sharp-m...
bookmakersstringevent_id*string | numberinclude_book_idsbooleanmarketsstringperiodstringsincestringsport_key*stringpropline_search_playersFind a player by name fragment and get their stable player_id (e.g. 'mlb:677951') plus every spelling the books use (known_names). Free tier. Pass the player_id as player_name to propline_get_player_history / propline_get_player_trends to avoid name-spelling ambiguity.3 params
Find a player by name fragment and get their stable player_id (e.g. 'mlb:677951') plus every spelling the books use (known_names). Free tier. Pass the player_id as player_name to propline_get_player_history / propline_get_player_trends to avoid name-spelling ambiguity.
limitnumbersearch*stringsport_key*stringpropline_get_player_historyPlayer prop history across recent games for one market. Returns each prior prop this player took with line, prices, resolution, actual value, is_main_line (the book's main line vs an alt-ladder rung) and line_moved_in_play. Pass main_line_only=true to drop alt rungs. Pro tier...6 params
Player prop history across recent games for one market. Returns each prior prop this player took with line, prices, resolution, actual value, is_main_line (the book's main line vs an alt-ladder rung) and line_moved_in_play. Pass main_line_only=true to drop alt rungs. Pro tier...
limitnumbermain_line_onlybooleanmarketstringmarketsstringplayer_name*stringsport_key*stringpropline_get_player_gamesA player's recent games with every raw box-score stat per game — one call instead of one request per event. Use this to answer 'how has X actually performed lately?' and to build L5/L10/L20, season splits and head-to-head yourself. Pass `opponent` for H2H (accepts a full name,...5 params
A player's recent games with every raw box-score stat per game — one call instead of one request per event. Use this to answer 'how has X actually performed lately?' and to build L5/L10/L20, season splits and head-to-head yourself. Pass `opponent` for H2H (accepts a full name,...
limitnumberopponentstringplayer_name*stringsport_key*stringstat_typestringpropline_get_player_trendsHit-rate trends / last-N-games over rate for a player — unique to PropLine's prop-resolution data. For each market the player has graded history in, returns over/under/push splits across the last 5/10/20/50 graded games, current streak, average actual stat, and the recent line...4 params
Hit-rate trends / last-N-games over rate for a player — unique to PropLine's prop-resolution data. For each market the player has graded history in, returns over/under/push splits across the last 5/10/20/50 graded games, current streak, average actual stat, and the recent line...
dfs_odds_typestringstandard · goblin · demonmarketstringplayer_name*stringsport_key*stringpropline_get_event_evPro-tier endpoint. Returns cross-book +EV per outcome for an event. We anchor on a sharp book, remove vig, derive a no-vig fair line, and compute EV% per book at the same line. Outcomes are sorted with +EV plays floated to the top of each line group. PrizePicks is excluded fro...8 params
Pro-tier endpoint. Returns cross-book +EV per outcome for an event. We anchor on a sharp book, remove vig, derive a no-vig fair line, and compute EV% per book at the same line. Outcomes are sorted with +EV plays floated to the top of each line group. PrizePicks is excluded fro...
bookmakersstringdevigstringmultiplicative · shinevent_id*string | numberfair_sourcestringmarketsstringmax_ageintegermin_ev_pctnumbersport_key*stringpropline_get_event_projectionsMarket-implied consensus projection per (market, player) for an event: the line where the no-vig P(over) crosses 50%, median across contributing sportsbooks. Use it to validate statistical or fantasy projections against the live market. These are MARKET-IMPLIED values derived...3 params
Market-implied consensus projection per (market, player) for an event: the line where the no-vig P(over) crosses 50%, median across contributing sportsbooks. Use it to validate statistical or fantasy projections against the live market. These are MARKET-IMPLIED values derived...
event_id*string | numbermarketsstringsport_key*stringpropline_get_best_lineCross-book line shopping (Hobby+ for prices; free tier gets the full structure with book identities + best-first ranking but prices nulled and redacted:true). For every (market, player, line) tuple on an event, returns the single best American price across all comparable books...5 params
Cross-book line shopping (Hobby+ for prices; free tier gets the full structure with book identities + best-first ranking but prices nulled and redacted:true). For every (market, player, line) tuple on an event, returns the single best American price across all comparable books...
bookmakersstringevent_id*string | numberinclude_linksbooleanmarketsstringsport_key*stringpropline_list_webhooksList the API key's webhook subscriptions (Streaming Lite tier and up; other tiers get a 403 with an upgrade URL). Read-only: signing secrets are always masked, and this server deliberately has no create/update/delete tools — manage subscriptions via the REST API or SDKs. Each...
List the API key's webhook subscriptions (Streaming Lite tier and up; other tiers get a 403 with an upgrade URL). Read-only: signing secrets are always masked, and this server deliberately has no create/update/delete tools — manage subscriptions via the REST API or SDKs. Each...
No parameters. Call it with no arguments.
propline_get_webhook_deliveriesRecent delivery attempts for one webhook (Streaming Lite tier and up), newest first — the debugging surface for 'why isn't my webhook firing'. Each row: status (pending/success/failed), HTTP response_code, attempts, delivered_at and the payload that was sent. A pending row wit...3 params
Recent delivery attempts for one webhook (Streaming Lite tier and up), newest first — the debugging surface for 'why isn't my webhook firing'. Each row: status (pending/success/failed), HTTP response_code, attempts, delivered_at and the payload that was sent. A pending row wit...
before_idnumberlimitnumberwebhook_id*numberpropline_replay_webhook_eventsRe-read a webhook subscription's events in order from a cursor — answers 'my endpoint was down, what did I miss?'. Every delivery carries an X-PropLine-Sequence header, a counter monotonic WITHIN one subscription; pass the highest one the user processed as since_seq. Do NOT us...3 params
Re-read a webhook subscription's events in order from a cursor — answers 'my endpoint was down, what did I miss?'. Every delivery carries an X-PropLine-Sequence header, a counter monotonic WITHIN one subscription; pass the highest one the user processed as since_seq. Do NOT us...
limitnumbersince_seqnumberwebhook_id*numberpropline_create_free_api_keyCreate a free personal PropLine API key for the user and EMAIL it to them. Use this when the user wants their own key — e.g. they hit a shared-demo-key rate limit, a paid field came back redacted, or they ask how to get a key. Only call it with an email address the user explic...1 params
Create a free personal PropLine API key for the user and EMAIL it to them. Use this when the user wants their own key — e.g. they hit a shared-demo-key rate limit, a paid field came back redacted, or they ask how to get a key. Only call it with an email address the user explic...
email*stringSponsors
Configuration
PROPLINE_API_KEY*secretPropLine API key. Free tier (1,000 req/day, no card) at https://prop-line.com
PROPLINE_BASE_URLOverride the API origin (default https://api.prop-line.com). For self-hosted setups only.
Readme
propline-mcp
Listed in the official MCP Registry as io.github.proplineapi/propline-mcp — discoverable from Claude Code, Claude Desktop, and any MCP-aware client.
Model Context Protocol server for the PropLine player props betting odds API. Plug it into Claude Desktop, Claude Code, or any MCP-compatible client and ask natural-language questions about live odds, prop resolution, cross-book +EV, scores, and box-score stats — the model picks the right tool, calls the API, and answers from real data.
No more "I'd need an API for that" deflections from your AI assistant. PropLine MCP turns sports-betting research into a chat.
What you can ask
Once installed, you can prompt the model with things like:
Details
- Repository
- github.com/proplineapi/propline-mcp
- Website
- prop-line.com
- Package
propline-mcp- Transport
- STDIO, HTTP
- Auth
- Required
- Registry
- MCP registry, active
- Tools verified
- Nov 6, 2026