acquire
Fetch, scrape, or download football data from any source. Also handles API key setup and credential management. Use when the user wants to get data from…
Explore, interpret, and draw conclusions from football data. Use when the user wants to analyse match events, compare teams or players, understand tactical patterns, build visualisations, or needs guidance on what questions to ask of their data. Adapts to the user's experience
$ npx -y skills add withqwerty/nutmeg --skill analyse --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/analyseContext preview
The summary Claude sees to decide when to auto-load this skill.
Explore, interpret, and draw conclusions from football data. Use when the user wants to analyse match events, compare teams or players, understand tactical patterns, build visualisations, or needs guidance on what questions to ask of their data. Adapts to the user's experience
name: nutmeg-analyse description: "Explore, interpret, and draw conclusions from football data. Use when the user wants to analyse match events, compare teams or players, understand tactical patterns, build visualisations, or needs guidance on what questions to ask of their data. Adapts to the user's experience level." argument-hint: "[analysis question or topic]" allowed-tools: ["Read", "Write", "Bash", "Glob", "Grep", "Agent", "mcp__football-docs__search_docs"]
Help the user explore and interpret football data. Adapt depth and approach to their experience level from `.nutmeg.user.md`.
Read and follow `docs/accuracy-guardrail.md` before answering any question about provider-specific facts (IDs, endpoints, schemas, coordinates, rate limits). Always use `search_docs` — never guess from training data.
Read `.nutmeg.user.md`. If it doesn't exist, tell the user to run `/nutmeg` first.
Guide them step by step. Start with simple questions:
Avoid jargon. Explain xG before using it. Show them what the data looks like before analysing it.
**Common beginner mistake:** Drawing conclusions from tiny samples. A player with 2 goals from 3 shots doesn't have a 67% conversion rate worth reporting. Always flag sample size.
They know the basics. Help with:
**Common intermediate mistake:** Confusing correlation with causation. High possession doesn't *cause* wins. Help them think about mechanisms.
Focus on rigour:
**Common advanced mistake:** Over-engineering. Sometimes a bar chart answers the question better than a neural network.
1. **Match narrative:** xG timeline (when did each team create chances?) 2. **Shot map:** Location, xG value, outcome for each shot 3. **Passing network:** Who connected with whom, average positions 4. **Pressing analysis:** Where did each team win the ball back? 5. **Key events:** Goals, red cards, substitution impact
1. **Performance trajectory:** Rolling xG, points, form over the season 2. **Style profile:** Possession %, PPDA, directness, set piece reliance 3. **Squad analysis:** Minutes distribution, key players by contribution 4. **Home vs away:** Performance split 5. **Score state:** How does the team play when winning vs losing?
1. **Per-90 stats:** Normalise by minutes, not matches 2. **Percentile ranks:** Where does this player rank among peers (same position, same league)? 3. **Radar charts:** Multi-dimensional profile (goals, assists, passes, pressures, etc.) 4. **Progressive actions:** Passes, carries, and runs that move the ball significantly forward 5. **Minimum minutes filter:** 900 minutes (10 full matches) is a common threshold
1. **Define the question first.** "Is Player A better than Player B?" is too vague. Better: "Who creates more high-quality chances from open play?" 2. **Control for context.** Per-90 stats, adjust for team quality, league quality. 3. **Use appropriate baselines.** Compare to positional averages, not all players. 4. **Acknowledge limitations.** Different roles, different teammates, different systems.
| Chart type | Best for | Football use case | |-----------|---------|-------------------| | Shot map | Spatial data on pitch | Where shots were taken, sized by xG | | Pass network | Relationships | Who passes to whom, team shape | | xG timeline | Match narrative | Running xG through a match | | Radar chart | Multi-dimensional comparison | Player or team profiles | | Bar chart | Ranking / comparison | League tables, top scorers | | Heatmap | Density / frequency | Player touch maps, action zones | | Scatter plot | Two-variable relationship | xG vs actual goals, creativity vs volume | | Beeswarm | Distribution | Player stat distributions by position |
Football data can tell you whatever you want it to. Guard against this:
1. **State your question before looking at the data.** Don't go fishing for interesting patterns. 2. **Report null results.** "We found no significant difference" is a valid finding. 3. **Show the raw numbers alongside fancy metrics.** xG is meaningless without goals for context. 4. **Be specific about what you're measuring.** "Pressing intensity" measured how? Over what period? 5. **Acknowledge what the data can't tell you.** Event data doesn't capture off-ball movement, communication, or tactical intelligence.
A Claude Code plugin that makes Claude an expert at football data analytics. Who it's for: Anyone who works with football data — analysts, developers, journalists, researchers, hobbyists.
Fetch, scrape, or download football data from any source. Also handles API key setup and credential management. Use when the user wants to get data from…
Brainstorm football data visualisations and chart designs. Use when the user wants ideas for how to visualise football data, needs inspiration for chart types,…
Calculate derived football metrics and models. Use when the user wants to compute xG, xGOT, PPDA, passing networks, expected threat, possession value, pressing…
Fix broken data scrapers and pipelines. Use when data acquisition fails, a scraper breaks, an API returns errors, or data format has changed. Also handles…
Learn about football analytics concepts and explore provider documentation. Use when the user asks what a metric means (xG, PPDA, expected threat, xT), wants…