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 21 football data providers and tools, built for AI coding agents. Covers club and provider APIs including StatsBomb, Wyscout, SportMonks, Impect, SkillCorner, Sportradar, TheSportsDB, BeSoccer, FMDB Pro, TransferRoom, Opta, and public/free sources, plus open-source libraries people build with too (kloppy, mplsoccer, socceraction, soccerdata, databallpy, floodlight, 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.

1356
searchable chunks
21
providers + tools
7
MCP tools
v0.8.0
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
StatsBomb
235 chunks
Wyscout
161 chunks
floodlight
145 chunks
kloppy
126 chunks
SportMonks
82 chunks
Impect
77 chunks
Opta
71 chunks
mplsoccer
64 chunks
databallpy
63 chunks
Free sources
62 chunks
SkillCorner
48 chunks
TransferRoom
43 chunks
soccerdata
40 chunks
FMDB Pro
35 chunks
socceraction
34 chunks
Sportradar
29 chunks
TheSportsDB
18 chunks
BeSoccer
14 chunks
FotMob
3 chunks
Soccerdonna
3 chunks
Transfermarkt
3 chunks
What's coming next release
v0.8.1 in development — not yet on npm
fast-forward and unravelsports in review
Both packages from UnravelSports, suggested by their author. fast-forward is a Rust-cored tracking loader covering 12 providers — six of which nothing in the index currently documents at all: Hawk-Eye, SciSports, Signality, Respovision, GradientSports and OptaVision. unravelsports turns tracking data into graph representations, pressing intensity and formation detection. Takes the corpus to 1,809 chunks across 23 providers.
Validation for string vocabularies in review
The checks that hold docs to a real package assume a vocabulary is made of identifiers — importable symbols, or SCREAMING_SNAKE enum members. Plenty of libraries use plain lowercase strings instead, and those docs were passing without being checked at all. Truth files now record what every Literal parameter accepts, so a documented coordinate system that does not exist fails the build.
Crawler fixes in review
Three, all found the hard way. Directory-style doc links were never followed, so mkdocs sites yielded their index page and stopped. HTML tables were being flattened one cell per line, which quietly destroyed every table in every crawled provider. And heading permalink anchors were being carried into chunk titles, so a URL was the first thing an agent read in a search result.

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