Skip to main content
Glama
iFan6oy

Flash Props API

Flash Props API + MCP

Flash Props API is a player-props API and MCP server by Flash AI Solutions for posted lines, Flash projections, evidence, context, and line movement across sports and esports.

This repository is the public connector and metadata surface for the hosted Flash Props API and MCP service. There is no proprietary Flash Props backend server to install from this repository. Point your client at the hosted endpoint and authenticate with a Flash Props API key for board data.

Related MCP server: Sports Hub MCP Server

Connect

Streamable HTTP endpoint:

https://api.flashodds.live/mcp

Send your API key in the Authorization header:

Authorization: Bearer <your_api_key>

Anonymous access works for capability discovery (list_sports, get_market_metadata) so a client can inspect current coverage on first run. Retrieving board data requires at least a free key. Get one at https://api.flashodds.live/.

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "flash-props": {
      "type": "streamable-http",
      "url": "https://api.flashodds.live/mcp",
      "headers": { "Authorization": "Bearer YOUR_API_KEY" }
    }
  }
}

Tools

Tool

What it returns

Access

list_sports

Every sport with live status + projection/context capability

Anonymous

get_market_metadata

Market labels, families, scope, and projectability

Anonymous

list_games

Today's games with props for a sport

Free+

get_game_props

All player props for one game

Free+

scan_props

Market-wide prop scan across the slate

Free+; row cap by tier

find_game

Resolve team names to an event id

Free+

find_player_props

Every active prop for one player

Free+

get_player_context

Season baselines, recent form, and deep context

Free/Starter basic; Pro deep

get_prop_evidence

Book line, Flash line, gap, form, confidence, splits, movement

Free teaser; Starter basic; Pro full

get_prop_history

Chronological line/odds history for a prop

Starter limited; Pro full

scan_movers

Biggest line movers in a window

Starter limited; Pro full

get_leaders

Ranked boards for gap, form, and sample strength

Free top 3; Starter top 10; Pro full

REST and MCP share the same entitlement shaping, so a key sees the same product tier regardless of transport.

Provider-driven coverage

Do not hard-code a list of sports with Flash projections. Coverage is resolved from the server's registered model providers and can vary by sport + market.

Use list_sports to inspect projectionCapability, effectiveProjection, and contextCapability, then use get_market_metadata to determine whether a specific market is modeled. A partially modeled sport can legitimately expose Flash projections for one stat while keeping another stat posted-lines-only.

Missing analysis is reported explicitly. Flash Props does not fabricate a projection to fill an unsupported market.

Tiers

  • Free: 250 requests/day, 25-row scans, evidence teaser, basic player context, top-3 leaders

  • Starter: 10k requests/day, 100-row scans, basic evidence, limited history/movement, top-10 leaders

  • Pro: 100k requests/day, 500-row scans, full evidence/context/history/movement/leaders

  • Enterprise: custom limits

See current pricing and the REST reference at https://api.flashodds.live/.

Data is informational only. Flash Props is not a sportsbook and is not affiliated with any league, team, player, sportsbook, or DFS operator.

Available Tools

5 tools
find_gameFind a game by teamsAInspect

Resolve a matchup description (home and away team names) to an event id you can pass to get_game_props. Use this when you know the teams but not the event id. Returns { eventId } on success, or an error if no matching game is found for today's slate. Team names are matched case-insensitively and support partial names (e.g. "Yankees", "New York Yankees", "NYY" all work for MLB). If no game is found, the matchup may not be on today's board or the sport may be out of season.

ParametersJSON Schema
NameRequiredDescriptionDefault
awayYesAway team name or abbreviation, e.g. "Red Sox", "GSW", "Buffalo Bills"
homeYesHome team name or abbreviation, e.g. "Yankees", "LAL", "Kansas City Chiefs"
sportNoSport id, e.g. mlb, nba, nfl. Defaults to the in-season sport.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description carries full burden. It discloses case-insensitive matching, partial name support, and that it only searches today's slate. It also states the return format ({ eventId }) and error handling. However, it does not mention whether multiple matches are possible or how they are handled.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with the core purpose in the first sentence. Every subsequent sentence provides useful context without redundancy. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description adequately explains the return format ({ eventId } or error). It covers matching flexibility, error conditions, and limitations (today's slate only). This is sufficient for a simple lookup tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear descriptions for each parameter. The description adds value by explaining matching behavior (partial names, case-insensitive), but does not add new parameter-specific details beyond what the schema provides, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool resolves a matchup description to an event ID for use with get_game_props. It explicitly distinguishes this tool from siblings by mentioning the downstream use case and the type of input (team names vs event IDs).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'Use this when you know the teams but not the event id,' providing clear when-to-use guidance. It also explains what happens if no match is found (not on today's board or out of season), but does not explicitly mention alternative tools like list_games for other lookup strategies.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_game_propsGet props for a gameAInspect

Get player props for one game by event id (from list_games; ids are prefixed ud- or bv-).

ParametersJSON Schema
NameRequiredDescriptionDefault
sportNoSport id. Defaults to the in-season sport.
statsNoComma-separated stat filter, e.g. points,rebounds
eventIdYesEvent id, e.g. bv-26839935

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries full burden. It only mentions the tool retrieves props but omits details about return format, read-only nature, or any side effects. The event ID format hint adds minimal transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, well-structured sentence delivers the core information without redundancy. Every word adds value, and the most critical information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool lacks an output schema, and the description gives no hint about the return structure or field details. For a tool that outputs props, this is a notable gap. It is minimally complete for a simple get operation but insufficient for confident use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear descriptions for all three parameters. The description adds no additional parameter meaning beyond noting the eventId prefix, which is already in the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves player props for a single game using an event ID. It specifies the source of IDs (list_games) and the prefix format, distinguishing it from siblings like scan_props.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies using list_games first to obtain an event ID with the correct prefix, providing clear context. However, it does not explicitly state when not to use this tool or mention alternatives like scan_props.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_gamesList today's gamesAInspect

List today's games with player props for a sport (nba, mlb, nfl, nhl, ncaab, ncaaf, soccer). Live games first.

ParametersJSON Schema
NameRequiredDescriptionDefault
sportNoSport id, e.g. nba or mlb. Defaults to the in-season sport.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It adds behavioral detail: 'Live games first' (ordering) and 'with player props' (inclusion of props in response). No contradictions, but could mention rate limits or pagination.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no fluff. First sentence states purpose and scope; second adds ordering and sport list. Highly efficient and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (1 optional param, no output schema), the description covers purpose, supported sports, default behavior, and ordering. Sibling tools are distinct, and no additional information is needed for a list operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single parameter 'sport'. The description adds default behavior ('Defaults to the in-season sport'), which is not in the schema description. This enhances understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'List today's games with player props for a sport', clearly identifying the verb (List), resource (today's games), and scope (with player props, specific sports). It distinguishes from siblings like find_game (searches a specific game) and get_game_props (retrieves props for a game).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for getting a list of today's games with props, mentioning supported sports, but does not explicitly state when to use this tool versus alternatives or provide exclusions. No direct reference to siblings or when-not-to-use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_sportsList sportsAInspect

List supported sports and whether your API key tier can access each.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses that the tool returns accessibility per API key tier, indicating authorization-based filtering. No mention of side effects or destruction, but none expected for a read-only list operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded with verb and resource, no extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless tool with no output schema, the description is adequate. It explains what the tool retrieves and the access information. However, it could hint at the output format (e.g., list of sport names with boolean flag).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist, so baseline is 4. The description adds meaning beyond the empty schema by specifying that the output includes sports and their accessibility by API key tier.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (list), the resource (supported sports), and additional context (access per API key tier). It distinguishes from sibling tools like list_games and find_game.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide explicit guidance on when to use this tool over alternatives like list_games or get_game_props. Usage is implied by the resource (sports).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scan_propsScan props (flow feed)AInspect

Market-wide scan: all player props across today's games for a sport, flattened into rows. Optionally filter by a single stat.

ParametersJSON Schema
NameRequiredDescriptionDefault
statNoFilter to one stat, e.g. strikeouts
limitNoMax rows (capped by your tier)
sportNoSport id. Defaults to the in-season sport.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries burden. It mentions flattening and optional filter, but lacks details on side effects, auth, rate limits, or return format beyond 'rows'. Adequate but not comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two efficient sentences. Front-loaded with key purpose, no unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple scan tool with 3 optional params and no output schema, description covers main behavior (all props today, flattening, optional filter). Missing explicit mention of default sport but handled in schema. Reasonably complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all 3 parameters. Description adds minimal value beyond schema (e.g., 'optionally filter by a single stat' matches stat param). Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it scans all player props across today's games for a sport and flattens them, with optional stat filter. Differentiates from siblings like get_game_props which targets a specific game.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implied usage through wording 'market-wide scan' and optional filter, but no explicit guidance on when to use versus alternatives (e.g., get_game_props) or when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 1 tool update
    • Changedfind_game3 fields changed
      • changedInput schema / properties / away / description
        Previous value: -"Away team name"New value: +"Away team name or abbreviation, e.g. \"Red Sox\", \"GSW\", \"Buffalo Bills\""
      • changedInput schema / properties / home / description
        Previous value: -"Home team name"New value: +"Home team name or abbreviation, e.g. \"Yankees\", \"LAL\", \"Kansas City Chiefs\""
      • changedInput schema / properties / sport / description
        Previous value: -"Sport id. Defaults to the in-season sport."New value: +"Sport id, e.g. mlb, nba, nfl. Defaults to the in-season sport."
  2. 5 tool updatesv1.0.0
    • First observedfind_game
    • First observedget_game_props
    • First observedlist_games
    • First observedlist_sports
    • First observedscan_props

TDQS

A4.2/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: resolving team names to event IDs, retrieving props for a specific game, listing games for a sport, listing supported sports, and scanning all props across games. There is no overlap.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern using lowercase with underscores: find_game, get_game_props, list_games, list_sports, scan_props. This pattern is uniform and predictable.

Tool Count5/5

With 5 tools covering the essential operations for a sports props API (listing sports, listing games, resolving matchups, retrieving individual game props, and scanning all props), the count is well-scoped and each tool earns its place.

Completeness5/5

The tool set covers the full lifecycle of accessing player props: discovering available sports, listing games, resolving matchups, retrieving props for a specific game, and performing a market-wide scan. No obvious gaps are present for a read-only API.

Maintenance

ActivityMaintained
ResponsivenessUnresponsive

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    MCP-compatible server that gives AI agents access to alternative sports data across 30+ leagues — odds, events, probabilities, settlement, and futures for prediction markets, DFS platforms, and sportsbooks.
    29
    15
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    A unified MCP server that aggregates 32 sports API providers into a single service, providing 336 tools for scores, stats, odds, esports, and more across 70+ sports.
    100
    146
    22
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Props-first sports odds API with a hosted MCP server. Live odds and player props (moneyline, spreads, totals) across US sportsbooks, normalized to JSON. Tools: get_odds, get_props, get_events, get_books. API-key auth, free tier.
    MIT No Attribution
  • A
    license
    Not graded
    quality
    C
    maintenance
    Public read-only MCP server exposing today's free sports-betting projections, track record, methodology, engine versions, and per-game model reads from the Olympus Bets Analytics platform.
    MIT

Appeared in Searches

Latest Blog Posts

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/iFan6oy/flash-props-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server