Skip to main content
Glama

pinnodds — Pinnacle odds

Server Details

Pinnacle live and prematch odds, odds drops and account usage. Auth: pinnodds API key as Bearer.

Ownership verified
Status
Healthy
Uptime
8.7% over 41 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.4/5.0

Scored across 8 tools

Disambiguation4/5

Most tools target clearly distinct resources (events, odds, drops, feed health, account, sports, docs). The one real overlap is get_event_odds vs get_prematch_lines, both returning odds lines for an event, but the descriptions sharply delineate them (live/prematch, centred selection vs all alternate lines).

Naming Consistency5/5

Every tool follows a clean verb_noun snake_case pattern with a small, predictable verb set (get_, list_, search_). No mixed conventions or vague verbs.

Tool Count5/5

Eight tools is well-scoped for a read-only odds API, and each tool earns its place covering a distinct facet (discovery, pricing, signals, health, quota, docs).

Completeness4/5

The surface covers the core odds lifecycle: sport discovery, event listing, single-event odds, full alternate lines, drop detection, feed health, and quota checks. Minor gaps like historical odds or the documented WebSocket/SSE feeds as callable tools, but agents can work around these.

Available Tools

8 tools
get_account_usageMy plan and usageA
Read-onlyIdempotent
Inspect

The plan behind the API key in use, its rate limits, when it expires, and how many requests it has made today. Use this before a long analysis to know how much quota is left (Trial keys allow 100 requests per day) or when a call returned rate_limited or key_expired.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already establish readOnly, idempotent, non-open-world, so the safety profile is covered. The description adds genuinely useful context beyond that: the Trial-key quota of 100 requests/day and the diagnostic value after rate_limited/key_expired responses. It stops short of describing auth setup or whether quota resets on a rolling or fixed window, but the added behavioral context is substantial.

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, front-loaded with the returned fields and then the actionable triggers. Every clause earns its place, including the parenthetical quota figure.

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?

For a zero-parameter read tool with no output schema, the description fully compensates by enumerating the returned fields (plan, rate limits, expiry, today's request count) and by anchoring usage to two concrete scenarios. An agent has everything needed to call it 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?

The tool takes zero parameters, so there is no parameter surface to document; the baseline for a 0-param tool is 4. Nothing in the description misrepresents inputs.

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 (get account usage) and enumerates exactly what is returned: plan, rate limits, expiry, and today's request count. This is clearly distinguishable from the odds/events siblings, which all deal with sports data rather than account metadata.

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 explicit when-to-use triggers: call it before a long analysis to check remaining quota, or after a call returned rate_limited or key_expired. Names the concrete error conditions that select this tool, leaving nothing to inference.

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

get_event_oddsGet odds for one eventA
Read-onlyIdempotent
Inspect

Current Pinnacle prices for one event: moneyline, spreads and totals (and team totals on request) for the periods you ask for. Period 0 is the full match; 1 = first half / first period, and so on. Concise shows up to 5 alternate lines centred on the main line; detailed shows all. Event ids come from get_events or get_odds_drops. Live and prematch are different boards — pass the same mode you used to find the event. Live prices, one API request per call.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNolive
marketsNo
periodsNo
event_idYes
response_formatNoconcise

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, openWorld), and the description adds real behavioural context on top: concise returns up to 5 alternate lines centred on the main line while detailed returns all, and 'one API request per call' flags the per-call cost. It does not disclose error/empty-book behaviour or payload shape (no output schema).

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?

Front-loaded with the core value, then periods, verbosity, id sourcing, and mode consistency in tightly packed clauses. No filler sentences; every line earns its place.

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?

With no output schema, the description still conveys the shape of results (periods, line counts, concise vs detailed) and the cost of a call. Minor omissions remain, such as whether missing markets/periods are silently dropped, but nothing essential to correct invocation is missing.

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

Parameters5/5

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

Schema description coverage is 0%, so the description carries the burden and does so: mode (live vs prematch, must match the discovery call), periods (0 = full match, 1 = first half/period, and so on), response_format (concise = 5 lines, detailed = all), and markets (team totals only on request). This adds meaning well beyond the bare enum and integer constraints.

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: 'Current Pinnacle prices for one event' with the exact market set (moneyline, spreads, totals, team totals). It is clearly distinct from siblings like get_events (id lookup) and get_prematch_lines (prematch-only board).

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?

Gives concrete routing: event ids come from get_events or get_odds_drops, and 'pass the same mode you used to find the event' since live and prematch are separate boards. It does not explicitly say when to prefer this over get_prematch_lines, so it falls short of a full when/when-not/alternatives statement.

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

get_eventsFind eventsA
Read-onlyIdempotent
Inspect

List live or upcoming (prematch) events for one sport, as compact rows with the full-match moneyline. Use it to find event ids before calling get_event_odds. Filter with query (space-separated words, all must match league, home or away, case-insensitive: e.g. 'premier league arsenal'). Results are capped; the trailer says how many were hidden. Every call is one live API request against your plan; reuse the ids you already have.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNolive = in-play board; prematch = upcoming fixtureslive
limitNo
queryNoWords that must all appear in league/home/away
sportYesSport id (1-13) or name, e.g. 1, 'soccer', 'NBA'
response_formatNodetailed adds main spread/total and scoreconcise

TDQS

A4.7/5.0
Behavior5/5

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

Adds real context beyond the readOnly/openWorld/idempotent annotations: results are capped and the trailer reports how many were hidden, and each call costs one live API request against the plan with an instruction to reuse ids. That cost and truncation disclosure is exactly the kind of behavior an agent cannot infer from the schema or annotations.

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?

Front-loads what the tool returns, then the routing instruction, then filtering syntax, then cost/pagination caveats. Five dense sentences with no filler; each one carries distinct information.

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?

With no output schema, the description still characterizes the return (compact rows, moneyline, response_format effect) and the truncation trailer, and warns about per-call cost. For a 5-param, read-only search tool an agent has everything needed to call it 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 description coverage is already 80%, so the baseline is 3. The description goes further on the highest-value parameter by explaining query semantics (space-separated, all words must match league/home/away, case-insensitive) with a concrete example, though limit's cap is only referenced indirectly as 'capped'.

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 and resource (list events) with scope qualifiers (live or upcoming/prematch, one sport) and output shape (compact rows with full-match moneyline). It is clearly distinguishable from get_event_odds (odds detail) and get_prematch_lines.

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?

Explicitly routes the agent: 'Use it to find event ids before calling get_event_odds' gives a concrete when-to-use and names the follow-on tool. It does not, however, address when to prefer it over the overlapping get_prematch_lines for upcoming fixtures, so the guidance is clear but not exhaustive.

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

get_feed_statusFeed healthA
Read-onlyIdempotent
Inspect

Is the odds feed healthy right now? Reports upstream status, how many live events are in the store, how fresh the last write is, and whether the prematch board is being served. Call this when odds look stale or a board came back empty. An empty board is not necessarily an outage: when the upstream goes quiet past our threshold the board is deliberately withheld rather than served with old prices, and the REST responses carry X-Data-Status (fresh/stale/unknown) and X-Data-Age-Ms to say so. This tool is how you find out which of the two it was.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the readOnly/openWorld/idempotent annotations, the description discloses important behavioral context: that an empty board can be a deliberate withholding when upstream goes quiet past a threshold, and that REST responses carry X-Data-Status and X-Data-Age-Ms to distinguish fresh/stale/unknown. This adds substantial interpretative value for the agent.

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?

The description is front-loaded with the core question and then answers when to call and how to interpret results. It is well structured and nearly every sentence adds value, though the final sentence ('This tool is how you find out which of the two it was') is somewhat redundant given the preceding explanation.

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?

With no output schema and no parameters, the description carries the burden of explaining what the tool returns. It describes the reported signals and header semantics well, but does not specify exact return field names or types. For this diagnostic use case that is largely sufficient, though slightly incomplete.

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?

The tool takes zero parameters, so there is nothing for the description to add about inputs. The baseline for zero-parameter tools is 4, and the description correctly does not waste space restating an empty 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 a specific diagnostic verb and resource: checking whether the odds feed is healthy, and enumerates the exact signals reported (upstream status, live event count, last write freshness, prematch board serving). It is immediately distinguishable from siblings like get_event_odds or get_prematch_lines, which retrieve odds rather than report feed health.

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?

It gives an explicit trigger: 'Call this when odds look stale or a board came back empty.' It also clarifies a common false alarm (empty board not necessarily an outage). However, it does not name alternative tools or state when not to use it, so it falls short of a full 5.

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

get_odds_dropsRecent odds dropsA
Read-onlyIdempotent
Inspect

Prices that dropped sharply against their own recent history — the 'steam' signal. Returns the newest drops first with from/to price and drop percentage. Default is the last 10 minutes at 5%+; widen max_age_sec or lower min_drop_pct to see more. Filter by sport, market (moneyline, spread, total, team_total) and period. One API request per call.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNolive
limitNo
sportNoSport id or name; omit for all sports
marketsNo
periodsNo
max_age_secNo
min_drop_pctNo
response_formatNoconcise

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so safety is covered. The description adds real value beyond them: result ordering ('newest drops first'), returned fields (from/to price, drop percentage), and cost ('One API request per call').

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?

Five short sentences, front-loaded with the core concept and return shape, then defaults, then tuning, then filters. No filler and every clause carries 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?

With no output schema and 8 parameters at 13% description coverage, the description does most of the necessary work: what the signal is, ordering, returned fields, defaults and filter dimensions. It omits the meaning of `mode` and `response_format`, which are the remaining gaps for a caller.

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 only 13%, so the description must compensate, and it largely does: it explains the semantics and defaults of `max_age_sec` and `min_drop_pct`, enumerates the market values, and describes the period and sport filters. It leaves `limit`, `mode` (live vs prematch) and `response_format` unaddressed, so it is not fully compensating.

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?

Names a specific signal ('prices that dropped sharply against their own recent history — the 'steam' signal') rather than restating the tool name. An agent can distinguish it from get_event_odds and get_prematch_lines without opening any schema.

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?

Gives concrete tuning guidance — defaults of last 10 minutes at 5%+, and explicitly how to broaden results via `max_age_sec` or `min_drop_pct`. It stops short of naming a sibling tool or stating when a different tool is the better choice.

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

get_prematch_linesAll prematch lines for one marketA
Read-onlyIdempotent
Inspect

Every alternate line for ONE market of ONE prematch event (all spreads, or all totals, etc.), across its periods. Use this when get_event_odds' centred selection is not enough — e.g. to find the price at a specific handicap. Prematch only; for live events use get_event_odds with response_format='detailed'.

ParametersJSON Schema
NameRequiredDescriptionDefault
event_idYes
market_typeNototals

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds a genuine behavioral constraint not in the annotations — that results are scoped to prematch events only and span all periods of a market. It omits response size/pagination behavior for what is potentially a large 'all lines' payload, keeping it short of a 5.

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?

Three tight sentences in a deliberate order: what it returns, when to prefer it over the sibling, then the prematch-only exclusion. No wasted words and the core purpose is front-loaded.

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 two-parameter read tool the routing and scope information is strong, and no output schema exists so return semantics must come from the description — which it partially supplies ('all spreads, or all totals, etc.'). The remaining gap is that parameter identity and allowed market_type values are left entirely to the schema.

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

Parameters2/5

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

Schema description coverage is 0% for both parameters, so the description must compensate, and it does not: neither event_id nor market_type is named, and the enum values (money_line, spreads, totals, team_total) and the 'totals' default are never referenced. The phrases 'spreads'/'totals'/'handicap' loosely evoke the market concept but do not tie meaning to a specific parameter.

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 concrete action and resource: 'Every alternate line for ONE market of ONE prematch event ... across its periods.' It explicitly distinguishes itself from the sibling get_event_odds ('centred selection is not enough'), so an agent can route correctly without opening either 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 explicit when-to-use ('when get_event_odds' centred selection is not enough — e.g. to find the price at a specific handicap') and a when-not ('prematch only; for live events use get_event_odds with response_format=detailed'). Both the alternative and the selecting condition are named.

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

list_sportsList sportsA
Read-onlyIdempotent
Inspect

List the sports pinnodds covers with their numeric ids. Call this first when the user names a sport and you need its id, or to confirm coverage. Costs no API quota. Soccer (1) has by far the largest board; use query in get_events to narrow it.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and closed-world, so the safety profile is covered. The description adds a genuinely useful trait outside the annotations — 'Costs no API quota' — plus the domain note that Soccer (1) has the largest board. It does not describe return shape, but the id/name pairing is implied in sentence one.

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?

Three short sentences, front-loaded with the identity statement, then the trigger, then the operational caveat. Every sentence carries distinct information; nothing is repeated from the schema or annotations.

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?

For a zero-parameter lookup with no output schema, the description supplies what is missing: what the return contains (sports and their numeric ids), when to reach for it, its quota cost, and a coverage caveat. An agent has everything needed to call it 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?

The tool takes zero parameters, which is the baseline-4 case. There is no argument syntax to explain, and the description correctly spends its words on when to call rather than inventing parameter guidance.

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 and resource ('List the sports pinnodds covers') plus the payload detail that matters ('with their numeric ids'). It also distinguishes itself from get_events by directing board-narrowing to that sibling's `query` parameter, so an agent can tell the two apart without opening either 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 trigger ('Call this first when the user names a sport and you need its id, or to confirm coverage') and names the alternative path for the adjacent task (use `query` in get_events to narrow). Both when-to-use and when-to-go-elsewhere are covered.

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

search_pinnodds_docsSearch pinnodds docsA
Read-onlyIdempotent
Inspect

Search the pinnodds API reference (endpoints, parameters, rate limits, plans, WebSocket and SSE feeds, sport ids, market shapes). Use it to answer 'how do I…' questions about the API itself rather than about odds. Costs no API quota.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryYes

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent and closed-world, so the safety profile is covered. The description adds genuinely new operational context: the call 'Costs no API quota', which materially affects how freely an agent may invoke it. It does not, however, describe the shape of returned results or any rate/latency behavior.

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 tight sentences: the first defines scope, the second defines the use case and a cost constraint. Every clause carries information and the scope statement is front-loaded.

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?

No output schema exists, so the description ideally would hint at the return shape (e.g., doc snippets or references). Scope, intended use, and quota cost are all present, making it largely adequate for a simple two-parameter search 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 description coverage is 0% for both parameters, so the description carries the burden. It partially compensates by enumerating the topic space a query can target, but says nothing about the `query` string's role/length or the `limit` parameter and its default of 3 / maximum of 5.

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 (Search) plus the exact resource domain (pinnodds API reference) and enumerates the covered content: endpoints, parameters, rate limits, plans, WebSocket/SSE feeds, sport ids, market shapes. This cleanly separates it from the data-fetching siblings like get_event_odds or get_events.

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?

Gives an explicit selection rule: use it for 'how do I…' questions about the API itself 'rather than about odds'. That excludes the odds/data siblings by category, though it does not name any specific sibling tool or state any prerequisite for 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.

  1. 8 tool updates
    • First observedget_account_usage
    • First observedget_event_odds
    • First observedget_events
    • First observedget_feed_status
    • First observedget_odds_drops
    • First observedget_prematch_lines
    • First observedlist_sports
    • First observedsearch_pinnodds_docs

Publisher details

Operator
pinnodds (independent operator; not affiliated with Pinnacle) · Publisher source
Vendor relationship
Independent · Publisher source
Trust center
Not available
Restrictions
Requires a pinnodds account and API key (free trial tier is rate-limited to 100 requests/day; paid plans from $99/month). Authenticate via OAuth 2.1 in the client or pass the API key as a Bearer token. No regional limits. · Publisher source

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Live and prematch sports odds, scores, live statistics and match search from SportAPI (football, basketball, tennis, esports and more). Works with demo data without an API key.
    11
    39 PyPI
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides comprehensive sports intelligence including live scores, standings, schedules, betting odds, news, highlights, and more via SSE transport.
    -
  • A
    license
    A
    quality
    A
    maintenance
    Live sports betting player props MCP server covering NBA, MLB, NFL, NHL, NCAA, and soccer. Unified from real sportsbooks into one REST API and a real MCP server (Streamable HTTP). Free tier, no card required.
    5
    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
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources