Lumify Sports Intelligence
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LUMIFY_API_KEY | No | Lumify API key (lmfy-...). Optional for tools/list; required for tools/call. Free instant key: https://lumify.ai/docs/ai |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_sports | 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 to see non-current/historical seasons. |
| list_events | 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). |
| get_eventA | Get a single event with participants and venue. Optionally inline current odds and/or bet intelligence (+1 credit each, only charged when that data is actually available). 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. |
| batch_get_eventsA | 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. |
| query_eventsA | 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. |
| get_live_score | 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_oddsA | Get current betting odds for an event: per-bookmaker lines and last-updated time. bookmaker defaults to pinnacle; use 'all' for every book (costs 1 credit per book returned). Returns available:false with no charge if odds aren't posted for this event yet. Use get_odds_history for line movement over time instead of the current line. |
| get_odds_historyA | 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_splitsA | Get public betting splits (bets% and handle%) for an event: a consensus split plus a per-book breakdown, with a captured_at timestamp. Returns available:false with no charge if splits haven't been captured for this event yet. |
| get_intelligence | Get AI bet intelligence for an event: confidence scores, signal breakdowns, rationale, and narratives for each recommended bet, plus an overall analyst_take and match_overview. bookmaker defaults to pinnacle. Returns available:false with no charge if intelligence hasn't been computed yet for this event/bookmaker. |
| list_teamsA | 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. |
| search_players | 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. |
| get_team | 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_playerA | 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_eventsA | 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. |
| list_seasonsA | List seasons per sport/league, optionally filtered by sport or to the current season only. 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. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| todays_games | Summarize today's games (optionally for one sport) with live scores. |
| event_bet_brief | Build an explainable betting brief for one event: odds, confidence, rationale, line moves, and public splits. |
| line_watch | Report line movement and where the public money is for one event. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| sports_catalog | Supported sports with their leagues and current season (JSON). The 'what can I query' entrypoint — resolve sport/league slugs and season ids here before calling list_events, list_teams, or search_players. |
| quickstart | Endpoint, zero-signup instant-key authentication, the full tool map, and the credit model — everything needed to make a first call. |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/lumifyai/lumify'
If you have feedback or need assistance with the MCP directory API, please join our Discord server