nutmeg

nutmeg

IN BETA!
Football data analytics for AI coding tools

Makes your AI agent an expert at football data. It looks up the real docs instead of guessing — qualifier IDs, coordinate systems, API endpoints, method signatures. All verified, all sourced.

Get started

Answer two questions and we'll show you exactly what to install.

What AI coding tool do you use?
What do you want?
Start here
/nutmeg
Describe what you want — it handles the rest
/nutmeg-learn
Concepts, resources, provider docs
Sub-skills auto-dispatched or called directly
/nutmeg-acquire
Fetch and download football data
/nutmeg-wrangle
Transform and reshape data
/nutmeg-compute
Derived metrics (xG, PPDA...)
/nutmeg-analyse
Explore and interpret data
/nutmeg-brainstorm
Visualisation ideation
/nutmeg-review
Check data code and charts
/nutmeg-store
Storage and publishing
/nutmeg-heal
Fix broken scrapers and pipelines
Providers
ProviderEventsStatsxGFree?
StatsBomb Open data
Opta
Wyscout
SportMonks Free tier
FBref
Understat

football-docs

football-docs

IN BETA!
Like Context7 for football data

Searchable documentation across 24 football data providers and tools, built for AI coding agents. Covers club and provider APIs including StatsBomb, Wyscout, SportMonks, Impect, SkillCorner, Sportradar, Driblab, TheSportsDB, BeSoccer, FMDB Pro, TransferRoom, Opta, and public/free sources, plus open-source libraries people build with too (kloppy, mplsoccer, socceraction, soccerdata, databallpy, floodlight, fast-forward, unravelsports, and more). Your agent resolves provider names, looks up the real docs, compares provider concepts, and resolves football entities across provider IDs instead of guessing from training data. Works with any MCP client.

2325
searchable chunks
24
providers + tools
7
MCP tools
v0.11.1
npm version
Install
Claude Code

Adds football-docs to the current Claude Code project.

claude mcp add football-docs -- npx -y football-docs@latest
Requires Node 20+. Restart your client, then ask use football-docs to look up Opta qualifier 76.
Tools
search_docs
Full-text search across all providers
resolve_provider_id
Resolve provider names and aliases
get_provider_docs
Retrieve docs for a resolved provider
list_providers
See all indexed providers
compare_providers
Compare how providers handle concepts
request_update
Flag outdated docs or request new ones
resolve_entity
Map players, teams, and coaches across provider IDs
Example queries
Indexed providers
SportMonks
565 chunks
fast-forward
250 chunks
StatsBomb
235 chunks
unravelsports
202 chunks
Wyscout
163 chunks
floodlight
144 chunks
kloppy
126 chunks
Impect
77 chunks
Opta
71 chunks
mplsoccer
65 chunks
databallpy
63 chunks
Free sources
62 chunks
SkillCorner
49 chunks
TransferRoom
43 chunks
soccerdata
40 chunks
FMDB Pro
35 chunks
socceraction
34 chunks
Sportradar
30 chunks
Driblab
30 chunks
TheSportsDB
18 chunks
BeSoccer
14 chunks
FotMob
3 chunks
Soccerdonna
3 chunks
Transfermarkt
3 chunks
What's new this release
v0.11.1 shipped — on npm now
Traps in the Driblab API shipped
A misspelt route returns 403 with an API Gateway message, not 404, so it reads as an entitlement failure and sends an agent chasing the wrong cause. Rate limiting returns 405 rather than 429, so retry logic keyed on 429 never fires. Season-scoped and team-scoped player stats use path shapes that each look like a typo for the other. Some valid requests return an undocumented 409. And the API is not read-only: POST /game and DELETE /player/{id} exist.
Driblab, checked against its live API shipped
Driblab arrived in 0.11.0, derived from its public Notion guide. 0.11.1 checks it against the live API, and the guide does not describe what the API returns. Player stats come back in twelve PascalCase groups such as BallHandling, team stats in twelve snake_case groups, where the guide documents seven. Game-level player rows are flat camelCase rather than nested objects, and Arrigo metrics arrive in eight groups whose names can mix an underscore and a space. The docs now list what the API actually sends. Takes the corpus to 2,325 chunks across 24 providers.

campos banner

campos

IN BETA!
React components for football, typed and agent-native

23 React chart components, 10 data-provider adapters, one canonical coordinate frame, zero-config defaults. Typed from schema to render. Every chart is agent-discoverable via a static JSON registry at campos.withqwerty.com/r/ — nutmeg proposes and composes campos charts automatically when it detects a React project. Docs and live demos at campos.withqwerty.com.

23
chart components
10
data adapters
2333
tests
5
npm packages
Drives from nutmeg, automatically

When nutmeg detects a React project (package.json contains react or @withqwerty/campos-react), it loads a shared bridge doc, fetches the registry above, and proposes campos charts with real capability data per provider. Chart output, adapter selection, and recipe suggestion all route through the live catalogue — no hallucinated props, no training-data drift. See nutmeg on GitHub for the bridge reference.

Start building with football data

Install in 30 seconds. Your AI agent becomes a football data expert.

/plugin marketplace add withqwerty/plugins /plugin install nutmeg@withqwerty