Skip to main content
Glama
edushinka

betbetter-mcp

by edushinka

betbetter-mcp

An MCP server that gives any AI assistant access to sports model win probabilities and fair odds across nine sports — no API key, no sign-up, free to use.

Data comes from the Bet Better open model API, published under CC BY 4.0.

What it gives you

For every upcoming fixture the model rates, you get:

Field

Meaning

game

The fixture, Away @ Home

gameTimeUtc

Scheduled start, UTC

market

Head to Head, Spread, Total Points, player props…

selection

The team, player or outcome being rated

modelProbabilityPct

Estimated chance it lands, 0–100

fairOdds

Decimal odds implied by that probability

confidence

HIGH, LEAN or LONG-SHOT

verdict

A one-sentence plain-English summary

Leagues: AFL · MLB · NBA · NFL · NHL · NCAAF · UFC · WNBA · WTA tennis · EPL · La Liga · Serie A · Bundesliga · Ligue 1 · World Cup.

Related MCP server: Odds-API MCP Server

Install

npx betbetter-mcp

Claude Desktop / Claude Code

Add to your MCP config:

{
  "mcpServers": {
    "betbetter": {
      "command": "npx",
      "args": ["-y", "betbetter-mcp"]
    }
  }
}

Tools

Tool

What it does

list_leagues

Lists every league slug and feed type available

get_model_picks

Rated selections for one league, filterable by minimum probability

find_fixture

Searches every league for a team or player and returns their rated selections

Example

"What does the model think about the Geelong game this weekend?"

{
  "game": "Geelong Cats @ Collingwood Magpies",
  "market": "Head to Head",
  "selection": "Geelong Cats",
  "modelProbabilityPct": 54.9,
  "fairOdds": 1.82,
  "confidence": "LEAN"
}

What this does not do

It publishes no bookmaker prices. There is no bookmaker name, market price or implied probability anywhere in the feed, and none is planned — the underlying odds data is licensed under terms that allow publishing derived work but not redistributing the feed. Everything here is the model's own output, so it cannot tell you where to bet or at what price.

Configuration

Variable

Default

Purpose

BETBETTER_BASE_URL

https://betbetter.world

Override the API origin (testing)

Responses are cached upstream for 15 minutes. Feeds are empty out of season — that is expected, not an error.

Responsible gambling

18+. Gambling involves risk and most people lose money. These are model estimates for research, not betting advice, and not a guarantee of any outcome. A selection rated 70% is meant to lose roughly three times in ten.

If gambling is causing you harm: Gambling Help Online (AU) or 1-800-GAMBLER (US).

Licence

MIT for this server. The underlying data is CC BY 4.0 — free to use with attribution to Bet Better.

Available Tools

3 tools
find_fixtureFind a fixture across leaguesB

Search upcoming fixtures across every league for a team or player name, and return the model's rated selections for the matches that match.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum selections to return.
queryYesTeam or player name, case-insensitive substring match.

TDQS

B3.3/5.0
Behavior3/5

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

No annotations provided, so the description carries full burden. It indicates a read-only search operation (no destructive hints) but does not explicitly state safety, authentication needs, or rate limits. Adequate but could be more transparent.

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, no redundancy. Essential information is front-loaded. Every word contributes to understanding the tool's function.

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

Completeness3/5

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

No output schema, so description should explain return values; it says 'rated selections' but lacks specifics on structure. Given only 2 parameters and a straightforward search, it is moderately complete but could benefit from example or field details.

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 100%, so baseline is 3. The description adds some meaning by specifying 'team or player name' for query, but this largely overlaps with the schema's description. No additional guidance on limit parameter.

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

Purpose4/5

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

The description clearly states the tool searches fixtures by team/player name and returns rated selections. It implies cross-league scope, distinguishing it from list_leagues (listing leagues) and get_model_picks (likely picks without search), but does not explicitly differentiate from siblings.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives (get_model_picks, list_leagues). The description only explains what it does, not when it's preferable or when not to use it.

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

get_model_picksGet model picks for a leagueA

Return the model's rated selections for a league: estimated win probability, fair decimal odds and a worded confidence (HIGH / LEAN / LONG-SHOT). Contains no bookmaker prices — this is model output only, so it cannot tell you where to bet or at what price.

ParametersJSON Schema
NameRequiredDescriptionDefault
feedNo"picks" = everything ranked, "games" = game lines only, "props" = player props only.picks
limitNoMaximum selections to return.
leagueYesLeague slug, e.g. "afl", "nba", "epl".
minProbabilityPctNoOnly return selections the model rates at or above this probability.

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 transparently states it is model output only and what is excluded. It could mention additional context like data freshness or auth requirements, but it sufficiently covers the key behavioral trait of not including betting prices.

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 concise sentences, no extra words. First sentence states what it returns, second clarifies a critical limitation. Every sentence is essential and front-loaded with the most important 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?

Despite no output schema, the description mentions the return fields (probability, odds, confidence). It also sets expectations by clarifying it does not contain bookmaker prices. Could be more complete about the ordering or selection logic, but overall adequate for a simple data retrieval 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%, so the schema documents parameters well. The description adds value by summarizing the overall purpose (model picks) but does not elaborate on parameter details beyond the schema. It meets the baseline expectation for high-coverage schemas.

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 the tool returns the model's rated selections with specific attributes (win probability, fair decimal odds, confidence word). It distinguishes from siblings like find_fixture and list_leagues by focusing on model picks, not fixtures or league lists.

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 notes the tool contains no bookmaker prices and cannot tell where to bet, advising when not to use it. However, it does not provide guidance on when to use this tool versus siblings (e.g., for model ratings vs. fixture lookup).

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

list_leaguesList available leaguesA

List every league slug the Bet Better model publishes, for use with the other tools.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior3/5

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

No annotations are provided, so the description must disclose behavioral traits. It accurately describes the output but does not explicitly state it is a read-only operation or mention any side effects.

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 a single sentence of 75 characters with no unnecessary words. It is perfectly concise and 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?

Given that there are no parameters or output schema, the description covers the essential purpose and usage. It could optionally mention the output format, but it is complete enough.

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 input schema has no properties (0 parameters), and schema coverage is 100%. The description adds meaning by specifying what is listed, which is not captured in 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 clearly states the tool lists every league slug for use with other tools, with a specific verb ('list') and resource ('league slugs'). It distinguishes from siblings by noting its output is intended for them.

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 phrase 'for use with the other tools' implies it is a prerequisite for siblings, providing clear context. However, it does not explicitly state when to use it or provide alternatives.

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. 3 tool updatesv1.0.1
    • First observedfind_fixture
    • First observedget_model_picks
    • First observedlist_leagues

TDQS

A3.7/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: listing leagues, getting picks for a league, and searching fixtures. No overlap in functionality.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern (get_model_picks, find_fixture, list_leagues), using underscores and clear verbs.

Tool Count3/5

With only 3 tools, the server is minimal but covers the core querying needs for model predictions. Could benefit from additional tools for direct fixture access or historical data.

Completeness2/5

Lacks a direct way to retrieve picks for a specific fixture by ID or to get predictions without searching by name. The search tool is a workaround but not a direct lookup.

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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
    B
    maintenance
    Enables AI assistants to access sports betting odds data from 265+ bookmakers across 34 sports, including events, odds, historical data, arbitrage, and value bets.
    22
    91
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to access comprehensive sports data including football, basketball, American football, and hockey leagues via 11 tools, with no API key required.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables fetching sportsbook odds, live scores, and event information across 70+ books and 30+ leagues, with tools to list sports, get scores, and discover events.
    14
    MIT

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/edushinka/betbetter-mcp'

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