Skip to main content
Glama

PropLine — Sports Betting Odds & Prop Resolution

Get best line

propline_get_best_line
Read-onlyIdempotent

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, plus an all_prices array sorted best-first (one row per book, each with last_update). Companion to propline_get_event_ev: /ev says whether a price beats the no-vig fair line; best-line says which book pays the most. DFS pick'em books (PrizePicks, Sleeper, Dabble, ParlayPlay, DraftKings Pick6) are excluded; Underdog only at clean two-way lines. Optional bookmakers filter to shop only the books the user holds accounts at.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
marketsNoComma-separated market keys (e.g. 'pitcher_strikeouts,h2h').
event_idYes
sport_keyYes
bookmakersNoComma-separated book keys (e.g. 'draftkings,fanduel') to shop only those books.
include_linksNoWhen true, every price row carries a link — that book's public event-page URL, the click-out for 'go bet this'. Books without a verified URL template return null. Also adds app_link — a mobile app-open deep link (ProphetX only today, null elsewhere).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / include_links / description
      Previous value: -"When true, every price row carries a link — that book's public event-page URL, the click-out for 'go bet this'. Books without a verified URL template return null."New value: +"When true, every price row carries a link — that book's public event-page URL, the click-out for 'go bet this'. Books without a verified URL template return null. Also adds app_link — a mobile app-open deep link (ProphetX only today, null elsewhere)."
  2. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already cover read-only/idempotent safety, but the description adds substantial non-obvious behavior: tier gating (Hobby+ returns prices; free tier returns structure with prices nulled and redacted:true), which book types are excluded, and the conditional Underdog inclusion. These are exactly the quirks an agent must know before trusting a returned price.

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

Conciseness4/5

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

Front-loaded with the core definition and then the tiering caveat, the /ev comparison, and the exclusion rules. Dense but each clause carries information; it runs long and could be tightened, but nothing is filler.

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?

No output schema exists, so the description carries the return contract itself: best price, all_prices sorted best-first with one row per book and last_update, plus the link/app_link behavior. For a cross-book shopping tool with tier gating, this is complete enough to call and interpret correctly.

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 60%, and the description adds meaning only for bookmakers, explaining its purpose (shop only books the user holds accounts at) beyond the schema's terse 'shop only those books' plus the shape of each per-book row. markets, event_id, and sport_key get no prose elaboration, and include_links is left entirely to 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?

States a specific verb+resource with precise scope: for every (market, player, line) tuple on an event, it returns the single best American price and an all_prices array sorted best-first. It explicitly separates itself from the odds tool and the /ev tool, so an agent can pick it without opening a sibling schema.

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

Usage Guidelines5/5

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

Gives an explicit routing rule: 'Companion to propline_get_event_ev: /ev says whether a price beats the no-vig fair line; best-line says which book pays the most.' It also states exclusions (DFS pick'em books, Underdog only at two-way lines) and a concrete use case for the bookmakers filter (books the user holds accounts at).

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.