ai.lumify/sports-intelligence
repo:https://github.com/lumifyai/lumify
Schedules, scores, odds, splits & explainable AI bet confidence — 8+ sports, free instant key.
- transport:
- remote
- credential class:
- self-provisionable
Owner verification
Not yet verified. Verifying proves you control this server and is free, permanently — it never changes a published score.
Start verification →Tools
- batch_get_eventsshallow
Get multiple events by id in one call — for agents that already have a list of ids and want full detail for each without one call per event. Max 25 ids. Returns full detail for every id that exists plus a not_found list for any that don't (never billed). Use get_event for a single id, or list_events / query_events to discover ids first.
- estimate_costshallow
Estimate the credit cost of one or more planned tool calls before making them — no credits are spent. Costs are data-dependent (e.g. odds/intelligence/splits not yet ingested for an event are free, and batch_get_events ids that don't exist cost nothing), so this returns a [min_credits, max_credits] range per call rather than a single number. Pass the exact tool name and arguments you're considering, e.g. {"tool": "get_event", "arguments": {"event_id": 123, "include_odds": true}}.
- get_eventshallow
Get a single event with participants and venue. Optionally inline current odds and/or bet intelligence (same 1 credit as the event call). Raises a not-found error if event_id doesn't exist. Use list_events / query_events to discover ids first, or batch_get_events to fetch several ids in one call.
- get_injuriesshallow
Beta. Get late-breaking player injury and availability status for an event (out / doubtful / questionable / probable / day_to_day / ir / suspended / available), with previous_status, body_part, note, source_url, and severity (info / material / critical). Beta coverage: NFL and MLB (more sports rolling out). NFL monitoring starts ~4.5 days before kickoff (Wednesday/Thursday practice reports); MLB stays on a 48-hour window. Returns available:false with no charge until the injury monitor has written a first structured report. Checks run on cadence, on a significant main-market odds move, and at a guaranteed pre-kickoff checkpoint. Subscribe to webhook event_type=injury for material/critical changes. No in-game feed. Use exclude_status to drop noisy long-standing designations (e.g. ir) from the response — does not affect available or credit cost.
- get_intelligenceshallow
Get AI bet intelligence for an event. Branch on sport/league and on probability (probability model — MLB, soccer/MLS, tennis, NFL, NCAAF) vs. confidence_score (points model — leftover unmigrated soccer). Other soccer leagues may return available:false. Probability surface is fair-price + line-shopping today, not picks (edge/tier null; has_recommend false). Price gap ≠ EV. bookmaker is a no-op for probability-model sports. Match-level tokens (OVER, UNDER, ML_DRAW) have null player/team attribution. available:false is free. Field catalog: https://lumify.ai/docs/reference#event-intelligence
- get_live_scoreshallow
Get a lightweight live score snapshot for an event: status, period, clock, per-participant score and period-by-period scores, and last-updated time. Cheaper and faster than get_event when you only need the score, not participants or venue. Raises a not-found error if event_id doesn't exist.
- get_oddsshallow
Get current betting odds for an event: per-bookmaker lines and last-updated time. Includes in-play quotes while the event is underway; books that have not quoted since kickoff are omitted. bookmaker defaults to pinnacle. Use 'all' or a comma-separated list for multiple books — still 1 credit. Default is main lines (is_main=true); set include_alts for alternate spread/total rungs. Final events include result (won/lost/push/void) graded from the pre-kickoff close. MLB, tennis, and migrated soccer mains also include fair_price and consensus mirrored from published assessments. Returns available:false with no charge if odds aren't posted for this event yet. If bookmaker is omitted and Pinnacle hasn't posted a line yet (common for the first/last games of a preseason slate), falls back to the best-covered other book and adds requested_bookmaker='pinnacle' plus fallback_bookmaker to the response instead of reporting no odds; an explicit bookmaker='pinnacle' never falls back. Use get_odds_history for line movement over time.
- get_odds_historyshallow
Get line-movement history for an event: a list of past odds snapshots (movements), each with its own timestamp, up to limit entries. bookmaker defaults to pinnacle. Use get_odds instead if you only need the current line.
- get_period_oddsshallow
Get first-half / first-five lines and live progress for an NFL, NCAAF, NBA, NCAAB, or MLB event. Joins persisted first_half_spreads / first_half_totals mains to this-event period scores (1H = Q1+Q2 or NCAAB's native 1H row; MLB F5 = innings 1–5) and grades the period, not the full game. GET /odds / get_odds stay on moneyline/spread/total. Returns available:false with no charge if no period mains have been ingested. Other sports return HTTP 400.
- get_playershallow
Get a single player profile: name, sport, country, position/handedness, physical stats, current team, and tennis ranking if applicable. Raises a not-found error if player_id doesn't exist. Resolve ids via search_players.
- get_player_eventsshallow
List a player's events (schedule/results), paginated by id (after_id). Defaults to ±30 days around today when no date filter is given. Resolve player_id via search_players first.
- get_player_propsshallow
Get player-prop lines and live progress for an NFL, NCAAF, NBA, NCAAB, NHL, or MLB event. Joins persisted player-prop mains to this-event player box counts and grades over/under/push (1:1 slugs, combo sums, weighted total bases, anytime TD, double-double/triple-double, hockey points). Sport × market catalog: https://lumify.ai/docs/player-props. GET /odds / get_odds stay on moneyline/spread/total. Returns available:false with no charge if no prop mains have been ingested. Other sports return HTTP 400.
- get_splitsshallow
Get public betting splits (bets% and handle%) for an event: a consensus split plus a per-bookmaker breakdown (bookmakers[].bookmaker uses the same odds slugs as get_odds, e.g. draftkings — not upstream short keys like dk), with a captured_at timestamp. Available for MLB, NBA, NHL, and NFL. Not available for tennis, soccer, or NCAAF (upstream does not expose splits). Returns available:false with no charge if splits haven't been captured for this event yet or the sport is unsupported.
- get_statsshallow
Get raw, deterministic team/match statistics for a soccer, MLB, tennis, NFL, NCAAF, NBA, NCAAB, or NHL event — no odds (use get_odds) and no scoring (use get_intelligence). Payload is sport-specific: teams.home/away except tennis (players.player_1/player_2). Tennis doubles/qualifying return available:false. Form/record/H2H exclude walkovers and NFL/NCAAF/NBA/NCAAB preseason. Other sports return HTTP 400. Field catalog: https://lumify.ai/docs/reference#event-stats
- get_teamshallow
Get a single team profile with its home venue. Raises a not-found error if team_id doesn't exist. Resolve ids via list_teams.
- get_team_propsshallow
Get team-total lines and live progress for an NFL event. Joins persisted Pinnacle team-total mains (each team's full-game points Over/Under) to this-event participant scores and grades over/under/push. GET /odds / get_odds stay on moneyline/spread/total. Returns available:false with no charge if no team-total mains have been ingested. Other sports return HTTP 400.
- grade_slipshallow
Grade settleable player-prop legs (over / under / push / in_progress / dnp / no_stat) for nfl, nba, ncaaf, ncaab, nhl, mlb, and soccer — the same sport coverage as get_player_props. Prefer structured event_id + player_id + market_key + line + side. Free text is interpreted with a rule-based parser and graded only when player and event resolve uniquely — never guesses an ambiguous name. A team span (CIN, vs Bills, Niners) is resolved first; unique team_id scopes the player, and ambiguous/not_found stays on team_resolve. Not live trading odds. Not wagering advice. Attribution is always Graded by Lumify.
- list_evshallow
Beta. List pregame moneyline +EV opportunities for a predictive-framework sport (soccer, mlb, tennis, nfl, ncaaf), sorted by ev_pct descending. Same gates as bets[].ev on get_intelligence: sharp-fair price gap, positive and ≤25%, suppressed MLB null books skipped in favor of the next eligible book. Not a claim-ladder +EV badge. 1 credit. Field catalog: https://lumify.ai/docs/reference#intelligence-ev
- list_eventsshallow
List events (schedules and live scores), paginated by id (after_id). Filter by sport, league, status, date range, season, or team_id (resolve teams via list_teams / get_team). Returns event id, name, sport/league, start time, status, and venue for each; pass include_scores to also inline participants + scores (intended for small result sets — use get_event for one event's full detail, or query_events for free-text/natural-language filters instead of structured params).
- list_forecastsshallow
Daily board of forecasted wagers from Lumify's model — a prediction, not a beat-the-market claim (no OOS/independence gate; see list_ev for the gated main-line +EV claim). Player props (rate model) on MLB, NCAAF, NFL, NBA, NCAAB, NHL. Tennis main-line: moneyline (ranking Bradley-Terry) as bet_type ML_P1/ML_P2, game handicap as SPREAD_P1/SPREAD_P2, and total games as OVER/UNDER (a Normal-approx games model; soft-book game-unit lines only, never Pinnacle's set-unit total). Each wager has p_hit, conviction (|p_hit−0.5|×2×sufficiency×research), and posted books prices. Use list_ev to scan main lines by sharp-fair price gap; use this tool to scan high-probability forecasts. reliability is emerging on v0. 1 credit; empty slate is still 200. How + field catalog: https://lumify.ai/docs/forecasts Worked wager: https://lumify.ai/docs/understanding-odds#forecasts
- list_seasonsshallow
List seasons per sport/league. By default returns only currently active seasons; pass current_only=false to include historical seasons. Optionally filter by sport. Returns each season's id, year, phase, start/end dates, and whether it is_current. Use list_sports for just each sport's current season.
- list_sportsshallow
List supported sports with their leagues and current season. Returns each sport's id, slug, name, team-sport flag, and its leagues (each with its current_season). Use list_seasons with current_only=false for historical seasons.
- list_teamsshallow
List teams, paginated by id (after_id). Filter by sport, league, conference, division, country, active status, or name (q, partial match). Returns each team's id, slug, name, city, conference/division, and venue. Use get_team for full detail on one id once resolved here.
- query_eventsshallow
Search events with a natural-language query instead of structured filters — e.g. 'live nfl games today' or 'college basketball this week'. Rule-based (not an LLM): recognizes sport (nfl/nba/mlb/nhl/tennis/soccer/ncaaf/ncaab + aliases like hockey, american football, college basketball), status (live/final/upcoming/…), dates (today/tomorrow, this week, next N days, YYYY-MM-DD ranges). Bare 'football' is ambiguous and left unrecognized. Response includes interpreted filters, equivalent REST call, and unrecognized_terms. Prefer list_events when you already know the structured filters you want.
- resolve_eventshallow
Resolve event identity from an event_id, or a player_id/team_id clue plus an optional date window, to a Lumify event_id. Falls back to a player's roster team schedule for team sports (only individual sports like tennis track per-player game participation directly). Combine team_id + opponent_team_id for a specific matchup. Returns ambiguous instead of guessing when the window has more than one candidate — never auto-pick candidates[0].
- resolve_playershallow
Resolve messy sports player names to a Lumify player_id using sport, team, or event clues. Prefer this before grade_slip when the name is a fragment, initial, or nickname. Returns ambiguous instead of guessing — never auto-pick candidates[0]. A sport-scoped key binds the in-scope side of a collision and returns not_found when every hit is out of scope. Does not grade props.
- resolve_teamshallow
Resolve messy team names, abbreviations, metros, or aliases to a Lumify team_id using sport, league, event, or player clues. Prefer this before list_teams when the string is a nickname or city token. Returns ambiguous instead of guessing — never auto-pick candidates[0]. City-only metros sit below the auto-resolve floor.
- search_playersshallow
Search players by name, sport, country, ranking, or active status, paginated by id (after_id). Returns each player's id, name, position, current team, and tennis ranking if applicable. Use get_player for full detail on one id, or get_player_events for a player's schedule/results.
Embed this server’s score
Tool count and median score across every tool in this server’s corpus — honest in a way a single cherry-picked tool’s badge wouldn’t be.
[](https://vouch.tools/servers/861161e5-b66d-418d-a92d-54a350475f79)