Skip to main content
Glama
jameselle

sockodds-mcp

by jameselle

No-vig fair odds

fair_odds
Read-only

Calculate no-vig fair odds for two- or three-way markets by removing bookmaker margin from decimal prices and averaging implied chances across bookmakers.

Instructions

Work out the no-vig (margin-free) fair price for a two- or three-way market. Method: for each bookmaker that prices every outcome at the same line, convert prices to implied chances (1 / decimal price), divide by their total so they add to 100% (the proportional method), then average those chances across bookmakers and convert back (1 / chance). Also reports each bookmaker's margin and the combined margin of the best prices. Use event_id and market for live prices, or pass prices to calculate by hand with no API call. The result estimates the chance; it is not a prediction or a tip.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
lineNoLine to use: the home team's handicap for a line market, the total for a total market
marketNoh2h, h2h_3way, line or total
pricesNoCalculate by hand from these decimal prices instead of calling the API
event_idNoEvent ID from find_event (with market)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only declare readOnlyHint and openWorldHint=false, and the description adds substantial context beyond that: the full calculation method, the fact that no API call occurs when prices are passed, what is reported (per-bookmaker margin and combined margin of best prices), and the important caveat that the result 'estimates the chance; it is not a prediction or a tip.'

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 purpose is front-loaded in the first sentence and the method, modes, and caveat follow in an orderly way. It is on the longer side and the method walkthrough is dense, but nearly every sentence carries information an agent needs, so little is wasted.

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 four-parameter tool with a nested prices object, no output schema, and only safety annotations, the description supplies what's missing: the algorithm, the two invocation modes, the reported outputs, and the interpretive caveat. Nothing an agent needs to call it correctly is absent.

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%, so the baseline is 3, but the description adds real meaning: it ties 'two- or three-way market' to the market enum, clarifies that event_id is used together with market, and frames prices as the by-hand alternative to the API path. It does not add further detail on the line parameter 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 names a specific verb and resource ('work out the no-vig (margin-free) fair price') and scopes it to two- or three-way markets, then details the exact proportional method used. An agent can tell this is a derived-metric calculator rather than a raw price lookup like get_odds or best_price 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?

It clearly states the two operating modes: 'Use event_id and market for live prices, or pass prices to calculate by hand with no API call.' That is explicit when-to-use guidance for each path, but it never names or excludes the sibling tools (get_odds, best_price), so the agent must infer the boundary itself.

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

Deploy Server

Other Tools