AI Ball MCP server

MCP serverDev tools

Football match outcome probabilities recorded before kick-off, and an open record of results.

Available today. Use it from your connected AI after setup.

Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

Then ask your AI: use AI Ball MCP server to list matches

Install AI Ball MCP server

The server’s own address, for the clients that take one directly. Or connect ahel once and every client you use reads it from one address, with the account kept on ahel rather than in each client’s config.

  • Claude Code

    claude mcp add --transport http --scope user ai-ball-mcp-server 'https://aiball.samagent.ai/mcp'

    Run it once in your project, then open /mcp to approve any sign-in the server asks for.

  • Claude Desktop

    https://aiball.samagent.ai/mcp

    Add a custom connector in Settings, paste this address, and approve the sign-in.

  • Cursor

    cursor://anysphere.cursor-deeplink/mcp/install?name=ai-ball-mcp-server&config=eyJ1cmwiOiJodHRwczovL2FpYmFsbC5zYW1hZ2VudC5haS9tY3AifQ==

    Open the link and Cursor adds the server at that address.

  • ChatGPT

    https://aiball.samagent.ai/mcp

    In Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.

  • Codex

    codex mcp add ai-ball-mcp-server --url 'https://aiball.samagent.ai/mcp'

    Run it once, then sign in with codex mcp login ai-ball-mcp-server if the server asks for an account.

From the project's README

As published by aiballfooty/aiball-mcp in README.md.

Read-only Model Context Protocol server for AI Ball, AI football match analysis.

It gives an AI assistant two things:

  • Pre-kick-off outcome probabilities. For each match, the model's home / draw / away probabilities as recorded before kick-off.
  • The open record. What happened afterwards: the final score and whether the model's most likely outcome came in. Misses are counted the same way as hits, and nothing is removed after the fact.

No account, no API key. The server only calls AI Ball's public record API.

Tools

ToolWhat it returns
list_matchesOne calendar day: match_id, kick-off time, league, teams and status (upcoming, pending or finished)
get_match_analysisOne match: home / draw / away probabilities recorded before kick-off, the most likely outcome, confidence, when the read was captured, and once played the score and whether it came in
get_open_recordThe whole record, or one week with week_start: matches counted, how many went the model's way, two baselines on the same matches, and the count by confidence band

Every tool is read-only (readOnlyHint: true). Names are available in English (lang: "en") and Malay (lang: "ms"). Responses are built from a fixed list of fields; nothing from the upstream API is passed through as-is.

Reading the numbers

  • models.balanced holds fractions for home, draw and away that sum to 1. This version returns the balanced model; models_available lists what is included.
  • result.hit is true when the model's most likely outcome happened.
  • hit_rate is a percentage. null means the sample is under min_band_sample, so use the counts hits and n instead.
  • favourite_baseline scores the same matches by always taking the pre-match favourite; random_baseline is one outcome in three.
  • upcoming matches are locked before kick-off. pending matches carry a current read that may still change.

The server caches each upstream response for five minutes and spaces its requests, so repeated questions do not hit AI Ball's API again.

Hosted version

Prefer not to install anything? The same record is served over MCP at:

https://aiball.samagent.ai/mcp

Streamable HTTP, no sign-in, read-only. It has the three tools below plus get_match_context (head-to-head, recent form, injuries and fixtures for finished matches only). Rate limit: 60 requests a minute per IP.

claude mcp add --transport http aiball https://aiball.samagent.ai/mcp

Install (local version)

Claude Desktop

Download aiball-mcp.mcpb from the latest release and open it.

Claude Code

claude mcp add aiball -- npx -y github:aiballfooty/aiball-mcp

Cursor, VS Code and other clients

{
  "mcpServers": {
    "aiball": {
      "command": "npx",
      "args": ["-y", "github:aiballfooty/aiball-mcp"]
    }
  }
}

Requires Node.js 18 or later.

Example questions

  • "How did AI Ball's model do on last week's matches?"
  • "Which of last week's matches did the model get wrong?"
  • "What are the model's probabilities for today's matches, in Malaysia time?"
  • "Across the whole record, does the model do better than always taking the favourite?"

Privacy

The server runs on your machine and sends requests only to https://aiball.samagent.ai/api/v1. Requests carry the tool's parameters (a date, a time zone, a language) and a User-Agent of aiball-mcp/<version>. They do not carry your conversation, your files or any identifier. AI Ball's web server keeps standard access logs. Site privacy policy: https://aiball.samagent.ai/en/privacy

Development

npm install
npm test        # starts the server and calls every tool against the live API

Set AIBALL_API_BASE to point the server at another base URL.

Licence

MIT. For information only. Not advice. 18+.

Tools it offers (4)

What this server listed when ahel dialed its public endpoint in Oct 2026, with no key and no account of yours. The names are the server’s own.

  • list_matches
  • get_match_analysis
  • get_match_context
  • get_open_record

Signals

Last commit
Oct 2026
Advanced
Delivery
aiball-mcp MCP server → your ahel connector (mcp.ahel.ai) → your AI.
Item type
mcp-server
Key
io-github-aiballfooty-aiball-mcp
Source
github.com/aiballfooty/aiball-mcp
Hosted endpoint
https://aiball.samagent.ai/mcp