
Wnba Data
- 519 installs
- 201 repo stars
- Updated August 5, 2026
- machina-sports/sports-skills
wnba-data is a Claude agent skill that accesses and shapes WNBA box scores, standings, rosters, and play-by-play data for developers building betting analytics, media tools, or women's basketball fan experiences.
About
wnba-data is a sports-skills agent skill for fetching and structuring Women's National Basketball Association datasets inside developer applications. The skill covers box scores, league standings, team rosters, and play-by-play event feeds that power betting analytics dashboards, media widgets, or fan-facing stats experiences. Developers reach for wnba-data when a product needs current-season WNBA metrics without manually scraping league sites or maintaining fragile HTML parsers. The workflow normalizes game, player, and team records into consumable shapes for APIs, charts, or recommendation engines. Use it when building sports data features focused on the WNBA rather than generic multi-league aggregators.
- WNBA schedule and standings feeds
- Box score and play-by-play parsing
- Roster and player stat joins
- Season and playoff context handling
- Structured exports for downstream apps
Wnba Data by the numbers
- 519 all-time installs (skills.sh)
- +7 installs in the week ending Aug 2, 2026 (Skillselion tracking)
- Ranked #442 of 2,064 Data Science & ML skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/machina-sports/sports-skills --skill wnba-dataAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 519 |
|---|---|
| repo stars | ★ 201 |
| Last updated | August 5, 2026 |
| Repository | machina-sports/sports-skills ↗ |
How do you integrate WNBA stats into an API?
Access and shape WNBA box scores, standings, rosters, and play-by-play data for betting insights, media tools, or women's basketball fan experiences.
Who is it for?
Developers building WNBA-focused sports APIs, betting analytics, or fan apps that need structured box scores, standings, rosters, and play-by-play feeds.
Skip if: General sports products covering many leagues without WNBA-specific data requirements or teams avoiding licensed sports statistics integrations.
When should I use this skill?
An app needs WNBA box scores, standings, rosters, or play-by-play data shaped for APIs, analytics, or fan experiences.
What you get
Normalized WNBA box scores, standings tables, roster records, and play-by-play datasets ready for API or UI consumption.
- Normalized WNBA datasets
- API-ready stat records
- Play-by-play event structures
Files
WNBA Data
Before writing queries, consult references/api-reference.md for endpoints, ID conventions, and data shapes.
Setup
Before first use, check if the CLI is available:
which sports-skills || pip install sports-skillsIf pip install fails with a Python version error, the package requires Python 3.10+. Find a compatible Python:
python3 --version # check version
# If < 3.10, try: python3.12 -m pip install sports-skills
# On macOS with Homebrew: /opt/homebrew/bin/python3.12 -m pip install sports-skillsNo API keys required.
Quick Start
Prefer the CLI — it avoids Python import path issues:
sports-skills wnba get_scoreboard
sports-skills wnba get_standings --season=2025
sports-skills wnba get_teamsCRITICAL: Before Any Query
CRITICAL: Before calling any data endpoint, verify:
- Season year is derived from the system prompt's
currentDate— never hardcoded. - If only a team name is provided, call
get_teamsto resolve the team ID before using team-specific commands.
Choosing the Season
Derive the current year from the system prompt's date (e.g., currentDate: 2026-02-18 → current year is 2026).
- If the user specifies a season, use it as-is.
- If the user says "current", "this season", or doesn't specify: The WNBA season runs May–October. If the current month is May–October, use
season = current_year. If November–April (offseason), useseason = current_year - 1.
Commands
| Command | Description |
|---|---|
get_scoreboard | Live/recent WNBA scores |
get_standings | Standings by conference |
get_teams | All WNBA teams |
get_team_roster | Full roster for a team |
get_team_schedule | Schedule for a specific team |
get_game_summary | Detailed box score and scoring plays |
get_leaders | WNBA statistical leaders |
get_news | WNBA news articles |
get_play_by_play | Full play-by-play for a game |
get_win_probability | Win probability chart data |
get_schedule | Schedule for a specific date or season |
get_injuries | Injury reports across all teams |
get_transactions | Recent transactions |
get_futures | Futures/odds markets |
get_team_stats | Team statistical profile |
get_player_stats | Player statistical profile |
See references/api-reference.md for full parameter lists and return shapes.
Examples
Example 1: Today's scores User says: "What are today's WNBA scores?" Actions: 1. Call get_scoreboard() Result: All live and recent WNBA games with scores and status
Example 2: Standings User says: "Show me the WNBA standings" Actions: 1. Derive season year from currentDate 2. Call get_standings(season=<derived_year>) Result: Eastern and Western conference standings with W-L, PCT, GB
Example 3: Team roster User says: "Who's on the Indiana Fever roster?" Actions: 1. Call get_team_roster(team_id="5") Result: Full Indiana Fever roster with name, position, jersey number
Example 4: Statistical leaders User says: "Show me WNBA statistical leaders" Actions: 1. Derive season year from currentDate 2. Call get_leaders(season=<derived_year>) Result: Leaders ranked by stat category (points, rebounds, assists, etc.)
Example 5: Championship odds User says: "What are the WNBA championship odds?" Actions: 1. Call get_futures(limit=10) Result: Top WNBA championship contenders with odds values
Example 6: Player statistics User says: "Show me A'ja Wilson's stats" Actions: 1. Derive season year from currentDate 2. Call get_player_stats(player_id="3149391", season_year=<derived_year>) Result: Season stats by category with value, rank, and per-game averages
Commands that DO NOT exist — never call these
- ~~
get_odds~~ / ~~get_betting_odds~~ — not available. For prediction market odds, use the polymarket or kalshi skill. - ~~
search_teams~~ — does not exist. Useget_teamsinstead. - ~~
get_box_score~~ — does not exist. Useget_game_summaryinstead. - ~~
get_player_ratings~~ — does not exist. Useget_player_statsinstead.
If a command is not listed in the Commands table above, it does not exist.
Error Handling
When a command fails, do not surface raw errors to the user. Instead: 1. Catch silently and try alternatives 2. If team name given instead of ID, use get_teams to find the ID first 3. Only report failure with a clean message after exhausting alternatives
Troubleshooting
Error: sports-skills command not found Cause: Package not installed Solution: Run pip install sports-skills
Error: Team not found by ID Cause: Wrong or outdated ESPN team ID used Solution: Call get_teams to get the current list of all WNBA teams with their IDs
Error: No data returned for a future game Cause: ESPN only returns data for completed or in-progress games Solution: Use get_schedule to see upcoming game details; get_scoreboard only covers active/recent games
Error: Offseason (November–April) — scoreboard returns 0 events Cause: No games scheduled during the offseason Solution: Use get_standings(season=<prior_year>) or get_news instead
WNBA Data — API Reference
Commands
get_scoreboard
Get live/recent WNBA scores.
date(str, optional): Date in YYYY-MM-DD format. Defaults to today.
Returns events[] with game info, scores, status, and competitors.
get_standings
Get WNBA standings by conference.
season(int, optional): Season year
Returns groups[] with Eastern/Western conferences and team standings including W-L, PCT, GB, and streak.
get_teams
Get all WNBA teams. No parameters.
Returns teams[] with id, name, abbreviation, logo, and location.
get_team_roster
Get full roster for a team.
team_id(str, required): ESPN team ID (e.g., "5" for Indiana Fever)
Returns athletes[] with name, position, jersey number, height, weight, experience.
get_team_schedule
Get schedule for a specific team.
team_id(str, required): ESPN team IDseason(int, optional): Season year
Returns events[] with opponent, date, score (if played), and venue.
get_game_summary
Get detailed box score and scoring plays.
event_id(str, required): ESPN event ID
Returns game_info, competitors, boxscore (stats per player), scoring_plays, and leaders.
get_leaders
Get WNBA statistical leaders (points, rebounds, assists, etc.).
season(int, optional): Season year. Defaults to most recently completed season.
Returns categories[] with leader rankings per stat category.
get_news
Get WNBA news articles.
team_id(str, optional): Filter by team
Returns articles[] with headline, description, published date, and link.
get_play_by_play
Get full play-by-play data for a game.
event_id(str, required): ESPN event ID
Returns play-by-play detail including period, clock, team, play description, and scoring plays.
get_win_probability
Get win probability chart data for a game.
event_id(str, required): ESPN event ID
Returns timestamped home/away win probability percentages throughout the game.
get_schedule
Get WNBA schedule for a specific date or season.
date(str, optional): Date in YYYY-MM-DD formatseason(int, optional): Season year (used only if no date provided)
Returns events[] for the specified date.
get_injuries
Get current WNBA injury reports across all teams. No parameters.
Returns teams[] with per-team injury lists including player name, position, status, injury type, and detail.
get_transactions
Get recent WNBA transactions (trades, signings, waivers).
limit(int, optional): Max transactions to return. Defaults to 50.
Returns transactions[] with date, team, and description.
get_futures
Get WNBA futures/odds markets (Championship winner, MVP, etc.).
limit(int, optional): Max entries per market. Defaults to 25.season_year(int, optional): Season year. Defaults to current.
Returns futures[] with market name and entries (team/player name + odds value).
get_team_stats
Get full team statistical profile for a season.
team_id(str, required): ESPN team IDseason_year(int, optional): Season year. Defaults to current.season_type(int, optional): 2=regular (default), 3=postseason.
Returns categories[] with detailed stats including value, rank, and per-game averages.
get_player_stats
Get full player statistical profile for a season.
player_id(str, required): ESPN athlete IDseason_year(int, optional): Season year. Defaults to current.season_type(int, optional): 2=regular (default), 3=postseason.
Returns categories[] with detailed stats including value, rank, and per-game averages.
Team IDs
| Team | ID |
|---|---|
| Atlanta Dream | 3 |
| Chicago Sky | 4 |
| Connecticut Sun | 6 |
| Dallas Wings | 8 |
| Indiana Fever | 5 |
| Las Vegas Aces | 9 |
| Los Angeles Sparks | 14 |
| Minnesota Lynx | 16 |
| New York Liberty | 17 |
| Phoenix Mercury | 21 |
| Seattle Storm | 26 |
| Washington Mystics | 30 |
Use get_teams for the complete, authoritative list.
WNBA Team IDs
| Team | ID |
|---|---|
| Atlanta Dream | 3 |
| Chicago Sky | 4 |
| Connecticut Sun | 6 |
| Dallas Wings | 8 |
| Indiana Fever | 5 |
| Las Vegas Aces | 9 |
| Los Angeles Sparks | 14 |
| Minnesota Lynx | 16 |
| New York Liberty | 17 |
| Phoenix Mercury | 21 |
| Seattle Storm | 26 |
| Washington Mystics | 30 |
Tip: Use get_teams to get the full, accurate list of team IDs.
#!/bin/bash
# Validates parameters before executing sports-skills commands
SPORT="wnba"
MONTH=$(date +%m)
case "$SPORT" in
wnba)
if [[ $MONTH -ge 11 || $MONTH -le 4 ]]; then
echo "WARNING: WNBA is in off-season (May–Oct). Scoreboard may be empty."
echo "SUGGESTION: Use get_news or get_standings with a prior season."
fi
;;
esac
if [[ "$*" == *"--date="* ]]; then
DATE=$(echo "$*" | grep -o '\-\-date=[^ ]*' | cut -d= -f2)
if [[ ! "$DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Date must be YYYY-MM-DD format. Got: $DATE"
exit 1
fi
fi
if [[ "$*" == *"--team_id="* ]]; then
TEAM_ID=$(echo "$*" | grep -o '\-\-team_id=[^ ]*' | cut -d= -f2)
if [[ -z "$TEAM_ID" ]]; then
echo "ERROR: --team_id requires a value. Use get_teams to find valid IDs."
exit 1
fi
fi
echo "OK"
Related skills
FAQ
What WNBA datasets does wnba-data provide?
wnba-data provides access and shaping for WNBA box scores, league standings, team rosters, and play-by-play data so developers can power betting insights, media tools, or fan-facing basketball experiences.
When should developers use wnba-data?
Developers should use wnba-data when building applications that need structured Women's National Basketball Association statistics instead of maintaining custom scrapers for scores, rosters, and play-by-play events.