betbetter-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@betbetter-mcpWhat are the predicted odds for the Lakers game tonight?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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 |
| The fixture, |
| Scheduled start, UTC |
| Head to Head, Spread, Total Points, player props… |
| The team, player or outcome being rated |
| Estimated chance it lands, 0–100 |
| Decimal odds implied by that probability |
|
|
| 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-mcpClaude Desktop / Claude Code
Add to your MCP config:
{
"mcpServers": {
"betbetter": {
"command": "npx",
"args": ["-y", "betbetter-mcp"]
}
}
}Tools
Tool | What it does |
| Lists every league slug and feed type available |
| Rated selections for one league, filterable by minimum probability |
| 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 |
|
| 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 toolsfind_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.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum selections to return. | |
| query | Yes | Team or player name, case-insensitive substring match. |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| feed | No | "picks" = everything ranked, "games" = game lines only, "props" = player props only. | picks |
| limit | No | Maximum selections to return. | |
| league | Yes | League slug, e.g. "afl", "nba", "epl". | |
| minProbabilityPct | No | Only return selections the model rates at or above this probability. |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
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.
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.
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.
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.
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.
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.
3 tool updates
v1.0.1- First observed
find_fixture - First observed
get_model_picks - First observed
list_leagues
TDQS
Each tool has a clearly distinct purpose: listing leagues, getting picks for a league, and searching fixtures. No overlap in functionality.
All tool names follow a consistent verb_noun pattern (get_model_picks, find_fixture, list_leagues), using underscores and clear verbs.
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.
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
Sports odds, player props and source coverage for AI assistants. Connect with your own API key.
Live sports stats and pre-computed analysis for AI assistants across NBA, MLB, NFL, and NHL.
Win probabilities for 13 sports: NFL, NBA, soccer, tennis, golf, cricket. No API key, no signup.
Schedules, scores, odds, splits & explainable AI bet confidence — 8+ sports, free instant key.
Related MCP Servers
- AlicenseBqualityDmaintenanceMCP-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.2915MIT

Odds-API MCP Serverofficial
AlicenseAqualityBmaintenanceEnables AI assistants to access sports betting odds data from 265+ bookmakers across 34 sports, including events, odds, historical data, arbitrage, and value bets.22911MIT- AlicenseNot gradedqualityDmaintenanceEnables AI agents to access comprehensive sports data including football, basketball, American football, and hockey leagues via 11 tools, with no API key required.MIT
- AlicenseNot gradedqualityCmaintenanceEnables fetching sportsbook odds, live scores, and event information across 70+ books and 30+ leagues, with tools to list sports, get scores, and discover events.14MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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