tennis-data
Original:🇺🇸 English
Translated
1 scriptsChecked / no sensitive code detected
ATP and WTA tennis data via ESPN public endpoints — tournament scores, season calendars, player rankings, player profiles, and news. Zero config, no API keys. Use when: user asks about tennis scores, match results, tournament draws, ATP/WTA rankings, tennis player info, or tennis news. Don't use when: user asks about other sports. Don't use for live point-by-point data — scores update after each set/match.
2installs
Added on
NPX Install
npx skill4agent add machina-sports/sports-skills tennis-dataTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →Tennis Data (ATP + WTA)
Quick Start
Prefer the CLI — it avoids Python import path issues:
bash
sports-skills tennis get_scoreboard --tour=atp
sports-skills tennis get_rankings --tour=wta
sports-skills tennis get_calendar --tour=atp --year=2026Important: Tennis is Not a Team Sport
Tennis data is fundamentally different from team sports (NFL, NBA, etc.):
- Tournaments, not games: Events are multi-day tournaments containing many matches.
- Individual athletes: Competitors are individual players (singles) or pairs (doubles), not teams.
- Set-based scoring: Scores are per-set game counts (e.g., 6-4, 7-5), not quarters.
- Rankings, not standings: Players have ATP/WTA ranking points, not team records.
- No rosters or team schedules: Tennis has no team-level commands.
The tour
Parameter
tourMost commands require or :
--tour=atp--tour=wta- ATP: Men's professional tennis tour
- WTA: Women's professional tennis tour
If the user doesn't specify, default to for men's tennis or for women's tennis. If the user just says "tennis" without specifying, ask which tour or show both by calling the command twice.
atpwtaBefore complex fetches, run the parameter validator:
bash scripts/validate_params.sh [args]For detailed reference data, see the files in the directory.
references/Workflows
Workflow: Live Tournament Check
get_scoreboard --tour=<atp|wta>- Present current matches by round.
- For player info, use .
get_player_info --player_id=<id>
Workflow: Rankings Lookup
get_rankings --tour=<atp|wta> --limit=20- Present rankings with points and trend.
Workflow: Season Calendar
get_calendar --tour=<atp|wta> --year=<year>- Filter for specific tournament.
- for latest coverage.
get_news --tour=<tour>
Examples
User: "What ATP matches are happening right now?"
- Call
get_scoreboard(tour="atp") - Present current tournaments and matches by round
User: "Show me the WTA rankings"
- Call
get_rankings(tour="wta", limit=20) - Present rankings with rank, name, points, and trend
User: "When is the French Open this year?"
- Call
get_calendar(tour="atp", year=2026) - Search results for "Roland Garros" (the French Open's official name)
Error Handling & Fallbacks
- If returns no matches, tournaments run specific weeks. Use
get_scoreboardto find when events are scheduled.get_calendar - If rankings are empty, rankings update weekly on Mondays. The command auto-retries previous weeks.
- If player profile fails, use to verify the player_id.
get_rankings - Never fabricate match scores or rankings. If data is unavailable, state so.