
Sportwizzard
com.sportwizzardPublished by sportwizzard.comOfficial publisherv0.1.4Updated Oct 24, 2026
Real-time sports betting data: odds, player props, edges and arbitrage from 35+ books and DFS apps.
Overview
Read-only sports betting data server: lets an assistant pull live odds, player props, +EV edges and arbitrage from 35+ sportsbooks and DFS apps.
- What you can do
- Look up events and fixtures, with detail such as weather, lineups and probable pitchers, plus box scores and per-player stat lines
- Fetch current prices by event, player, team, sportsbook, market or league, including season futures and tournament outrights
- Surface +EV edges against a devigged fair market and two- or three-way arbitrage opportunities with stake fractions
- Browse reference data: players, teams, sportsbooks, leagues, markets, season and historical stats, and bulk per-game logs
- Download the full live board as a gzip snapshot, optionally with price history, and check account plan, rate limit and monthly usage
- When to use it
- Useful when you want an assistant to research betting markets, compare prices across books, screen for edges or arbitrage, or pull sports stats and historical game logs for analysis. It is read-only, so it suits analysis and reporting rather than placing bets.
- Requirements
- A SportWizzard API key, sent as a bearer token in the Authorization header for the hosted endpoint or as SPORTWIZZARD_API_KEY for the local npm package run with npx (Node.js). Network access to the SportWizzard API. Optional SPORTWIZZARD_BASE_URL override and SPORTWIZZARD_MOCK=1 for offline sample data.
Installation
In SourceWeft
- Open Sportwizzard in the dashboard and add it to a workspace.
- Connect Authorization token credentials. They are stored privately and never shown on public pages.
- Enable the server for the chats that should use its tools.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Use with an agent
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/com.sportwizzard%2Fsportwizzard/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Other MCP clients
Add this to your client's mcpServers config.
{
"mcpServers": {
"sportwizzard": {
"type": "http",
"url": "https://mcp.sportwizzard.com/mcp",
"headers": {
"Authorization": "Bearer <YOUR_TOKEN>"
}
}
}
}README
SportWizzard MCP Server
Query live sports-betting data — odds, player props, +EV edges, arbitrage, stats and reference data from 35+ sportsbooks and DFS apps — from any MCP-capable AI agent (Claude Code, Claude Desktop, Codex, Cursor, …).
20 read-only tools over the SportWizzard REST v1 API, available two ways: a hosted remote server (zero install) and a stdio server via npx. Get a free API key at https://sportwizzard.com/account (API Keys tab — no card required).
Hosted (recommended — zero install)
The hosted server is a thin proxy: your key is forwarded to the SportWizzard API, which enforces auth and rate limits. All 20 tools work on both transports. (download_snapshot on the hosted server returns a CDN download URL + a ready-to-run command your agent executes locally; on stdio it writes the file directly.)
Successful authenticated live tool calls send a best-effort account-usage
receipt. The measurement request contains no tool arguments or result data.
For hosted download_snapshot, a successful CDN HEAD check counts because
the tool has verified that the returned download URL is reachable; a failed
HEAD check does not count.
Stdio (local)
Claude Code:
Claude Desktop (claude_desktop_config.json — macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\):
Mock mode (no key, no network)
Set SPORTWIZZARD_MOCK=1 to get canned sample responses — useful for wiring up an integration before you have a key.
Configuration
Tools
Every response uses the envelope { success, data, nextCursor, meta }; when nextCursor is present the tool appends a _paging hint so agents know to continue.
Futures (season-scope markets)
get_odds with scope=season returns season-long futures — division/conference/championship winners, award odds, team win totals, season leaders and full-season player props. Three orthogonal axes describe them:
marketScope— which anchor the market hangs off:SEASONorTOURNAMENT. Omitted entirely on ordinary game rows.period— the window within that anchor:REG_SEASON(settles at the end of the regular season) orFULL(runs through the playoffs).segment— which slice of the competition:AFC_EAST,NL,SEC, … Present only when the market is segment-scoped, and load-bearing: all 32 NFLDIVISION_WINNERselections share one season-anchoreventId, so withoutsegmentthey read as a single 32-team race instead of 8 divisions.
Notes: winner/award markets are categorical (one YES selection per competitor, teamSide: "NONE", usually no NO side); eventStartTime on a futures row is the season anchor / settlement date, not a kickoff; every book's futures for a competition share the same season eventId; and futures are deliberately excluded from get_edges / get_arbitrage (they never enter de-vig or edge math). Scope matching is exact — season does not include TOURNAMENT — and an invalid value returns HTTP 400 naming the valid ones.
From source
Maintainers
This README ships inside the npm package, so keep it free of internal hostnames, keys and private notes (the repository is public).
Layout. src/index.ts is the stdio entry (dist/index.js, the npm bin);
src/httpServer.ts is the hosted Streamable HTTP entry (stateless, one request
per POST; Host allow list and bearer-key handling); src/auth.ts validates the
caller's key against the API, caches it and applies the per-key rate limit;
src/tools.ts and src/server.ts define and register tools; src/client.ts
is the REST client and src/mock.ts the SPORTWIZZARD_MOCK=1 data.
tests/stdio-smoke.mjs and tests/http-smoke.mjs are end-to-end smokes
against a loopback mock API (no credentials, no production calls).
Build and verify (the PR check, .github/workflows/ci.yml, runs the same
pack-and-smoke plus a no-push container build):
The stdio smoke checks tools/list, get_odds scope=season forwarding and a
snapshot download with history; the HTTP smoke checks /healthz, key
rejection, the Host allow list, tools/list, key forwarding and a clean
SIGTERM exit. Both prove transport and packaging, not live data quality.
Releasing.
- Hosted server:
publish-container.ymlpublishes a SHA-tagged GHCR image on every push tomain. It deploys only when that digest is promoted in the Opsdeployment/releases/api.yamlrow, which owns placement, limits and credential references. - npm package: bump
versioninpackage.json, runnpm install --package-lock-only, syncserver.json, merge tomain, then run the manual Publish npm package workflow (publish-npm.yml). It builds once, smokes the packed tarball and publishes those exact bytes through npm trusted publishing (OIDC; no npm token). Publishing npm does not update the hosted container.
Gotchas. Hosted runtime settings are MCP_HTTP_PORT (default 8091),
MCP_ALLOWED_HOSTS, AUTH_CACHE_TTL_MS, RATE_LIMIT_PER_MIN,
SPORTWIZZARD_SNAPSHOT_URL and SPORTWIZZARD_SNAPSHOT_HISTORY_URL, plus the
customer settings above. download_snapshot writes a file on stdio but returns
a CDN URL and a command on the hosted server. Never print or commit ~/.npmrc.
Open work goes in GitHub issues in this repository.
License
MIT © SportWizzard LLC
Source: README.md at commit 8768261
Tools
0Version history
1- v0.1.4LatestSep 16, 2026
Score
85% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 daysRequired25 pts
- Auth declaredRequired10 pts
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts