infersports avatar

Infersports

dev.infersports/infersports

A read-only MCP server that surfaces sharp Asian betting odds and opening-line movement across six Asian bookmakers plus Pinnacle. Exposes tools like find_value, find_arbitrage, compare_lines, and get_opening_line so agents can answer questions like "where's the value?" or "how did the line move?" in plain language. Built around Asian handicap quarter-lines, totals, and 1x2 markets with de-vigged fair odds calculated from the sharpest book. Detection only, never execution. Useful if you're building agents that need to reason about live sports markets, compare bookmaker disagreement, or track how opening lines have shifted. Free tier includes delayed Asian book data; paid tiers add Pinnacle and real-time access.

tools
17
transport
HTTP
last updated
Jun 6, 2026

Install

From registry metadata
$ npx add-mcp https://api.infersports.dev/mcp --name infersports

Run in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.

Review the command, arguments and environment values before installing. MCP servers run with your local permissions.

Other ways

Claude Code

$ claude mcp add --transport http infersports https://api.infersports.dev/mcp

Run in your terminal. Add --scope user to make it available in every project.

Tools

Verified live · 17 tools

Verified live against the running server on Nov 6, 2026.

get_sharp_lineAnswer an odds question about a fixture in ONE call (natural language in, worked line out). Resolves the fixture, picks the consensus line, the best price per outcome across books, and de-vigged fair odds from the sharpest book — returning a ready-to-read ``summary`` plus the...7 params

Answer an odds question about a fixture in ONE call (natural language in, worked line out). Resolves the fixture, picks the consensus line, the best price per outcome across books, and de-vigged fair odds from the sharpest book — returning a ready-to-read ``summary`` plus the...

Parameters* required
datevalue
formatstring
default: decimal
market_typestring
default: asian_handicap
periodstring
default: full_time
query*string
sportvalue
verbositystring
default: full
find_matchFind a football/basketball fixture by natural-language name. Args: query: e.g. "Man City vs Arsenal" or a single team name. sport: optional filter — "football" or "basketball". date: optional UTC date "YYYY-MM-DD" to disambiguate same-name fixtures. Returns the best-matching e...3 params

Find a football/basketball fixture by natural-language name. Args: query: e.g. "Man City vs Arsenal" or a single team name. sport: optional filter — "football" or "basketball". date: optional UTC date "YYYY-MM-DD" to disambiguate same-name fixtures. Returns the best-matching e...

Parameters* required
datevalue
query*string
sportvalue
get_match_oddsGet all current odds for a match across bookmakers. Args: event_id: event id from find_match / list_today_matches (e.g. "evt_…"). markets: optional filter — any of "1x2", "asian_handicap", "totals". bookmakers: optional filter — bookmaker keys, e.g. ["pinnacle", "crown"]. peri...5 params

Get all current odds for a match across bookmakers. Args: event_id: event id from find_match / list_today_matches (e.g. "evt_…"). markets: optional filter — any of "1x2", "asian_handicap", "totals". bookmakers: optional filter — bookmaker keys, e.g. ["pinnacle", "crown"]. peri...

Parameters* required
bookmakersvalue
event_id*string
formatstring
default: decimal
marketsvalue
periodvalue
compare_linesCompare one market across all bookmakers for a match. Returns each book's quote line-by-line, the consensus line, the best price per outcome, each book's overround, and de-vigged fair odds from the sharpest (lowest-margin) book. Args: event_id: event id (e.g. "evt_…"). market_...5 params

Compare one market across all bookmakers for a match. Returns each book's quote line-by-line, the consensus line, the best price per outcome, each book's overround, and de-vigged fair odds from the sharpest (lowest-margin) book. Args: event_id: event id (e.g. "evt_…"). market_...

Parameters* required
event_id*string
formatstring
default: decimal
market_typestring
default: asian_handicap
periodstring
default: full_time
verbositystring
default: full
explain_handicapExplain an Asian handicap line. Splits a quarter line into its components (e.g. -0.75 → -0.5 / -1.0) and states the full-win / half-win / push / half-loss / full-loss conditions. ``line`` must be a multiple of 0.25.1 params

Explain an Asian handicap line. Splits a quarter line into its components (e.g. -0.75 → -0.5 / -1.0) and states the full-win / half-win / push / half-loss / full-loss conditions. ``line`` must be a multiple of 0.25.

Parameters* required
line*number
list_today_matchesList today's (UTC) fixtures — "what games are on today / right now?". Each fixture carries its status, live score, the live match ``clock`` (upstream minute text, verbatim e.g. "1h 25" / "2h 47" / "ht") when in-running, and a ready-to-read ``summary`` (live score & clock, or t...5 params

List today's (UTC) fixtures — "what games are on today / right now?". Each fixture carries its status, live score, the live match ``clock`` (upstream minute text, verbatim e.g. "1h 25" / "2h 47" / "ht") when in-running, and a ready-to-read ``summary`` (live score & clock, or t...

Parameters* required
leaguevalue
limitinteger
default: 50
sportvalue
statusvalue
timezonevalue
list_eventsList the fixtures for a calendar day — or a bounded [date, date_to] range. Unlike list_today_matches (today + anything still live), this is a strict window for whatever ``date`` you ask for. Pass ``date_to`` (inclusive, max 31 days after ``date``) to cover a whole tournament w...7 params

List the fixtures for a calendar day — or a bounded [date, date_to] range. Unlike list_today_matches (today + anything still live), this is a strict window for whatever ``date`` you ask for. Pass ``date_to`` (inclusive, max 31 days after ``date``) to cover a whole tournament w...

Parameters* required
date*string
date_tovalue
leaguevalue
limitinteger
default: 50
sportvalue
statusvalue
timezonevalue
match_infoGet the basics for a match in ONE call: the score, whether it's live, when it kicks off, and who's favored. No betting knowledge needed — this answers "who's winning?", "what's the score?", "what time does Brazil play (in my timezone)?", "who's the favorite?". Returns the live...4 params

Get the basics for a match in ONE call: the score, whether it's live, when it kicks off, and who's favored. No betting knowledge needed — this answers "who's winning?", "what's the score?", "what time does Brazil play (in my timezone)?", "who's the favorite?". Returns the live...

Parameters* required
datevalue
query*string
sportvalue
timezonevalue
list_bookmakersList the bookmakers available on your tier. Returns the curated catalogue (each with ``key``, ``name`` and ``class`` = "sharp" | "asian") plus a ``note`` on tier coverage. Free tier excludes the sharp book (Pinnacle). Use the returned ``key`` values in the ``bookmakers`` filte...

List the bookmakers available on your tier. Returns the curated catalogue (each with ``key``, ``name`` and ``class`` = "sharp" | "asian") plus a ``note`` on tier coverage. Free tier excludes the sharp book (Pinnacle). Use the returned ``key`` values in the ``bookmakers`` filte...

No parameters. Call it with no arguments.

get_opening_lineGet the opening odds (初盘) for a fixture, paired with the current price, in ONE call. Resolves the fixture, then for each book returns its **true opening** (first-seen) quote alongside the current quote — so you can read movement directly. For 1x2 that's a price move; for total...7 params

Get the opening odds (初盘) for a fixture, paired with the current price, in ONE call. Resolves the fixture, then for each book returns its **true opening** (first-seen) quote alongside the current quote — so you can read movement directly. For 1x2 that's a price move; for total...

Parameters* required
bookmakersvalue
datevalue
formatstring
default: decimal
marketsvalue
periodvalue
query*string
sportvalue
find_valueFind +EV value bets in a fixture — where a book's price beats the sharp fair line — in ONE call. Resolves the fixture, de-vigs the sharp book (Pinnacle) at each line to get the fair price, then flags every outcome whose best available price across books exceeds that fair price...7 params

Find +EV value bets in a fixture — where a book's price beats the sharp fair line — in ONE call. Resolves the fixture, de-vigs the sharp book (Pinnacle) at each line to get the fair price, then flags every outcome whose best available price across books exceeds that fair price...

Parameters* required
datevalue
formatstring
default: decimal
marketsvalue
min_edge_pctnumber
default: 1
periodvalue
query*string
sportvalue
compare_probJudge an external probability (e.g. a Polymarket/Kalshi price) against our sharp fair line — ONE call. Resolves the fixture, de-vigs the sharp book to a fair probability (power de-vig for 3-way 1x2), and reports the edge ``fair_prob − external_prob`` in percentage points, the...8 params

Judge an external probability (e.g. a Polymarket/Kalshi price) against our sharp fair line — ONE call. Resolves the fixture, de-vigs the sharp book to a fair probability (power de-vig for 3-way 1x2), and reports the edge ``fair_prob − external_prob`` in percentage points, the...

Parameters* required
datevalue
external_labelvalue
external_prob*number
market_typestring
default: 1x2
outcomestring
default: home
periodstring
default: full_time
query*string
sportvalue
score_probMarket-implied correct-score probabilities for ONE football match — ONE call. Inverts the de-vigged 1x2 (power de-vig) + totals prices into a bivariate-Poisson (Dixon-Coles) score grid and returns the top-K scorelines with probabilities, the fitted goal rates (lambda_home/lamb...4 params

Market-implied correct-score probabilities for ONE football match — ONE call. Inverts the de-vigged 1x2 (power de-vig) + totals prices into a bivariate-Poisson (Dixon-Coles) score grid and returns the top-K scorelines with probabilities, the fitted goal rates (lambda_home/lamb...

Parameters* required
datevalue
query*string
sportvalue
topinteger
default: 5
find_arbitrageFind cross-book arbitrage in a fixture — a guaranteed-profit price split — in ONE call. Resolves the fixture, then for each market/line takes the best price per outcome across books; when the inverse prices sum to < 1 there is a locked margin regardless of result. Reports the...7 params

Find cross-book arbitrage in a fixture — a guaranteed-profit price split — in ONE call. Resolves the fixture, then for each market/line takes the best price per outcome across books; when the inverse prices sum to < 1 there is a locked margin regardless of result. Reports the...

Parameters* required
datevalue
formatstring
default: decimal
marketsvalue
min_margin_pctnumber
default: 0
periodvalue
query*string
sportvalue
scan_slateScan today's whole slate in ONE call — each fixture with honest status + value/arb signal. The batch alternative to looping find_match → get_sharp_line per match. Returns every fixture in the filter with its status (finished is excluded from "live"), live score/clock, and a pr...10 params

Scan today's whole slate in ONE call — each fixture with honest status + value/arb signal. The batch alternative to looping find_match → get_sharp_line per match. Returns every fixture in the filter with its status (finished is excluded from "live"), live score/clock, and a pr...

Parameters* required
formatstring
default: decimal
leaguevalue
limitinteger
default: 20
marketsvalue
min_edge_pctnumber
default: 1
min_margin_pctnumber
default: 0
only_signalboolean
default: false
periodvalue
sportvalue
statusvalue
list_resultsLook back at finished-match scores from the 30-day results cache, most-recent-first. Results-only: each entry is the final score, red cards and finished time (no odds). Unlike the live tools, these survive a restart — use it for "what was the score of X?" or "yesterday's resul...4 params

Look back at finished-match scores from the 30-day results cache, most-recent-first. Results-only: each entry is the final score, red cards and finished time (no odds). Unlike the live tools, these survive a restart — use it for "what was the score of X?" or "yesterday's resul...

Parameters* required
datevalue
leaguevalue
limitinteger
default: 50
teamvalue
get_resultGet the cached final result for ONE finished match by event id. Returns the final score, red cards and finished time. ``status`` is "found" or "not_found" (the match isn't in the 30-day cache). Results-only — no odds. Args: event_id: event id (e.g. "evt_…") from find_match / l...1 params

Get the cached final result for ONE finished match by event id. Returns the final score, red cards and finished time. ``status`` is "found" or "not_found" (the match isn't in the 30-day cache). Results-only — no odds. Args: event_id: event id (e.g. "evt_…") from find_match / l...

Parameters* required
event_id*string

Sponsors

Details

Website
infersports.dev
Category
Communication & Messaging
Transport
HTTP
Registry
MCP registry, active
Tools verified
Nov 6, 2026

Related Communication & Messaging MCP servers

View all
1fgasparetto avatarVoice Transcriber MCP Serverfgasparetto/voice-transcriber-mcpMCP server for transcribing Google Chat voice messages using Groq Whisper API0stars
2francofuji avatarUnCorreoTemporalfrancofuji/uncorreotemporal-mcp-serverTemporary email for AI agents: create inboxes, wait for emails, extract OTPs, verify signups.0stars
3fursatdev-tech avatarFursatfursatdev-tech/fursatAI-bookable curated vacation homes in Northeast India and the Himalayas. Book on WhatsApp.0stars
4getlarkwright avatarSecOps Field Notesgetlarkwright/secops-field-notes-mcpCVSS scoring, IOC extraction, email header triage, hash/JWT/timestamp decoding, CISA KEV lookup.0stars
5holiday-forever avatarHoliday Photo Plus 2holiday-forever/holiday-photo-plus-2Holiday photo MCP server: list and fetch personal holiday photos inline in Claude chat.0stars
6inkwell-finance avatarDagon Inferenceinkwell-finance/dagon-mcpUncensored LLM inference: list models, chat, create keys, buy credits with Solana USDC.0stars