PropLine — Sports Betting Odds & Prop Resolution
Live odds, cross-book +EV and graded player-prop results across 37 books. Hosted endpoint included.
Connect it
Settings → Connectors → Add custom connector
URL: https://mcp.prop-line.com/mcpSettings → Apps & Connectors → Advanced → Developer mode
Create connector with URL: https://mcp.prop-line.com/mcp{
"mcpServers": {
"propline-mcp": {
"url": "https://mcp.prop-line.com/mcp",
"headers": {
"Authorization": "<YOUR_AUTHORIZATION>"
}
}
}
}claude mcp add --transport http propline-mcp https://mcp.prop-line.com/mcp --header "Authorization: <value>"{
"servers": {
"propline-mcp": {
"type": "http",
"url": "https://mcp.prop-line.com/mcp",
"headers": {
"Authorization": "<YOUR_AUTHORIZATION>"
}
}
}
}{
"mcpServers": {
"propline-mcp": {
"command": "npx",
"args": [
"-y",
"propline-mcp@0.50.1"
],
"env": {
"PROPLINE_API_KEY": "<value>"
}
}
}
}claude mcp add propline-mcp -- npx -y propline-mcp@0.50.134 tools, verified live
propline_list_sportsread-onlyList 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.
propline_list_eventsread-onlyList 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.
propline_list_event_marketsread-onlyList 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.
propline_get_oddsread-onlyGet 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[] array across every book that carries the requested markets (currently up to 37 â sportsbooks: Bovada, DraftKings, FanD
propline_get_odds_historyread-onlyHobby+ 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: from/to (absolute ISO), relative_from/relative_to (offsets to commence_time like '-3h' or '0'), interval downsample ('30s'/
propline_get_odds_closingread-onlyHobby+ 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 posted it (opening_price/opening_point/opening_at); pass opening_window to limit that lookback. Canonical CLV-tracking helper;
propline_grade_clvread-onlyHobby+ 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 closing fair probability, CLV, and â once the game settles â the graded resolution and actual stat value, plus a portfol
propline_price_sgpread-onlyHobby+ 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 / lowvig (the Sportcast engine both share, same builder price), or 'all' to quote every book on the same legs in one call â
propline_export_odds_historyread-onlyBackfill-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/Streaming use propline_get_odds_history per event instead). REQUIRES a since/until window to keep the pull bounded â the f
propline_get_futuresread-onlyFree-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, book, market) with each team/player outcome and its price. Marquee markets (Super Bowl winner, MVP, division/conference) a
propline_get_scoresread-onlyFree-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'.
propline_get_dfs_payoutsread-onlyFree-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 is_plus_ev per play â the slip-level breakeven. Useful for: 'what hit rate do I need to beat a 4-pick PrizePicks Power pl
propline_get_mlb_grand_salamiread-onlyFree-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, Smarkets). No retail sportsbook quotes this as a single market. Useful for: 'what's the total run line for tonight's fu
propline_get_nhl_daily_goals_totalread-onlyFree-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-game primary totals across our NHL books). No retail sportsbook quotes this as a single market. Useful for: 'what's the tot
propline_get_resolution_summaryread-onlyFree-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 data does PropLine have, what's the coverage'. A coverage proof, never a profitability claim.
propline_get_event_idsread-onlyFree-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. Useful for: 'join PropLine events onto ESPN / the MLB Stats API / a sportsbook's own feed', 'what is DraftKings' id for this g
propline_get_book_accuracyread-onlyFree-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 the result than the market average) with a 95% interval, verdict (beats_market / trails_market / in_line) and margin_pct (ave
propline_get_golf_roundsread-onlyFree-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, dp_world, liv, lpga, korn_ferry, champions). Hole counts are null on DP World, LPGA and some LIV rounds. Useful for: 'Schef
propline_get_golf_tournamentsread-onlyFree-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.
propline_get_event_statsread-onlyBook-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 event's status is in_progress, stats refresh ~every 90 seconds with cumulative in-game values â use this to answer 'how is th
propline_get_event_resultsread-onlyPro-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 same structure with resolution and actual_value redacted plus an upgrade pointer.
propline_get_event_contextread-onlyGame 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, precipitation) at outdoor / open-roof venues (indoor venues return weather=null). NFL & NCAAF: the venue and kickoff weather. Th
propline_get_event_movementread-onlyLine 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-money signal, computed across all 37 books PropLine polls. When a book moves the line itself, that outcome's prob_shift is
propline_search_playersread-onlyFind 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.
propline_get_player_historyread-onlyPlayer 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 returns full data; free tier returns redacted resolution/actual_value with an upgrade pointer.
propline_get_player_gamesread-onlyA 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, nickname or abbreviation â 'Boston Red Sox', 'Red Sox', 'BOS'); the limit applies AFTER that filter, so opponent + lim
propline_get_player_trendsread-onlyHit-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. This is the 'did X go over in N of his last M games?' surface. Omit `market` for all markets, or pass one to scope (e.g
propline_get_event_evread-onlyPro-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 from EV math (DFS payouts aren't comparable to per-book prices). The anchor is chosen PER LINE in the order pinnacle â polym
propline_get_event_projectionsread-onlyMarket-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 purely from sportsbook prices â never a forecast, and no accuracy claim is made; present them as 'the market implies X',
propline_get_best_lineread-onlyCross-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, plus an all_prices array sorted best-first (one row per book, each with last_update). Companion to propline_get_event_ev:
propline_list_webhooksread-onlyList 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 row shows url, subscribed events (line_movement, resolution, steam, market_suspended, ev), filters (incl. min_ev_pct / ma
propline_get_webhook_deliveriesread-onlyRecent 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 with attempts > 0 is mid-retry-backoff; status 'failed' with response_code null means the endpoint was unreachable or timed
propline_replay_webhook_eventsread-onlyRe-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 use the delivery id as the cursor: that id is global across all subscriptions, so gaps in it are other customers' traffic a
propline_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 explicitly gave you for this purpose in this conversation; never guess, reuse one from elsewhere, or sign up a third party. The
Alternatives in Developer Tools
Compare →RNRelease Notes IndexA
Release notes and changelogs from across the web, indexed for agents. Also via CLI and REST API.
CDclassifier.devA
Sort up to 1,000 texts into your own labels with a calibrated confidence per answer. No API key.
HOHonchoA
Memory that reasons: continual learning for stateful agents. Better context, fewer tokens.
MOMobilerunA
Control real Android and iOS devices with LLM agents — tap, swipe, type, automate flows.
DMDocs MCPA
Remote MCP server for Tandem docs, install guides, SDKs, workflows, and agent setup help.
SHShipSwiftA
40+ production-ready SwiftUI recipes for building full-stack iOS apps via MCP.