The bet-mcp server provides comprehensive Serie A pre-match betting analysis tools with statistical modeling and value detection capabilities.
List upcoming fixtures – Retrieve Serie A matches within a configurable window (1-10 days) with match IDs, teams, kickoff times, and venues
Analyze match context – Access detailed snapshots including current standings, last 5 results, and goals scored/conceded averages for both teams
Compare bookmaker odds – View normalized pre-match odds across multiple bookmakers for 1X2 (win/draw/win), Over/Under 2.5 goals, and Both Teams To Score markets
Calculate fair odds – Generate Poisson-based statistical probabilities and fair odds using team performance data and configurable home advantage factors
Identify value bets – Automatically detect up to 3 betting opportunities with at least 5% edge (minimum odds 1.50) by comparing market odds against fair probabilities, with detailed rationale
Deploy flexibly – Run locally via stdio or HTTP transport, or deploy to cloud platforms like glama.ai
Customize analysis – Configure home advantage factors, cache duration, API regions, and other parameters via environment variables
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., "@bet-mcpshow me value picks for this weekend's Serie A matches"
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.
bet-mcp
MCP server (FastMCP + TypeScript) that focuses on Serie A pre-match analysis:
fixtures_list– next fixtures in a configurable windowmatch_snapshot– last 5 results, standings, GF/GA averagesodds_prematch– normalized odds for 1X2 / OU 2.5 / BTTS across bookmakersfair_compute– Poisson-lite probabilities + fair oddsvalue_detect– top value picks by comparing best odds vs fair model
Getting started
Install dependencies (Node 20+ recommended):
npm installCopy
.env.exampleto.envand provide your keys:cp .env.example .env # edit the file with FOOTBALL_DATA_TOKEN and ODDS_API_KEYRun locally:
# stdio (Claude Desktop / terminal) npm run dev # or HTTP transport for remote testing MCP_TRANSPORT=http PORT=8080 npm run devBuild for production:
npm run build npm startDeploy on glama.ai:
Glama uses the included glama.yaml/glama.json files to run npm install && npm run build, then starts the server with MCP_TRANSPORT=http on port 8080. Configure FOOTBALL_DATA_TOKEN and ODDS_API_KEY (others optional) in the Glama dashboard so inspections and tool detection can succeed.
Implementation notes
Stack – FastMCP + Axios + Zod, TypeScript strict mode.
API clients – Football-Data.org for fixtures/stats; The Odds API for consolidated odds.
Modeling – Poisson using GF/GA averages + configurable home advantage, derived OU/BTTS probs.
Caching – In-memory TTL cache to reduce API calls (configurable via
CACHE_TTL_SECONDS).Value picks – Filters by
edge >= 5%andodds >= 1.50, returns rationale referencing λ/form.
Environment variables
key | description |
| Football-Data.org API token |
| Defaults to |
| Defaults to current year |
| The Odds API key |
| Regions filter (default |
| Markets request list (default |
| Sport key ( |
| Poisson λ multiplier for home team |
| Cache TTL (default 120) |
|
|
| HTTP port when |
Testing
Use npx fastmcp dev src/index.ts or npx fastmcp inspect src/index.ts after installing dependencies to interactively test the tools.