Install
openclaw skills install @tonywangcn/sports-scores-researchPulls live scores, standings, rosters, and player/team stats via the Crawlora API — ESPN (most sports/leagues), SofaScore (global soccer + more), MLB's own stats API, and Strava (routes, clubs, challenges) — returning clean JSON. Use when the user wants a live scoreboard, a team or player's stats, league standings, a game's boxscore/play-by-play, head-to-head history, or an endurance-sport route/club.
openclaw skills install @tonywangcn/sports-scores-researchPull live scoreboards, standings, rosters, player/team stats, and endurance- sport routes/clubs across four sports-data sources as normalized JSON from the Crawlora API — no scraping scoreboard widgets or stat pages.
export CRAWLORA_API_KEY=sk_your_key_herex-api-key: $CRAWLORA_API_KEY against
https://api.crawlora.net/api/v1. Missing/invalid key → 401./espn/scoreboard for today's/a date's
games (sport+league params); /espn/teams / /espn/team for team lists
and detail; /espn/team-roster for rosters; /espn/standings;
/espn/athlete for a player; /espn/game-summary for one game's
matchup/odds/boxscore; /espn/news and /espn/rankings (e.g. AP Top 25)
round it out./sofascore/search to
resolve a team/player/event id; /sofascore/live-events for what's live
right now; /sofascore/event (+ /event-statistics, /event-lineups,
/event-incidents, /event-odds, /event-h2h) for one match in depth;
/sofascore/standings, /sofascore/team, /sofascore/team-events,
/sofascore/team-players, /sofascore/player./mlb/schedule for games/scores by date; /mlb/game (+
/mlb/game-boxscore, /mlb/game-play-by-play) for one game's detail;
/mlb/standings, /mlb/teams, /mlb/team-roster, /mlb/team-stats;
/mlb/player + /mlb/player-stats; /mlb/transactions for
signings/trades/IL moves; /mlb/league-stats for ranked league leaders./strava/routes (requires sport — one of hiking,
road-biking, mountain-biking, trail-running, gravel-biking —
plus country+region slugs) to browse routes; /strava/routes/detail
(path) for one route; /strava/clubs/{id} for a club; /strava/challenges
for current public challenges.Full endpoint list, methods, and params: reference/endpoints.md.
# ESPN scoreboard + team:
scripts/crawlora.sh /espn/scoreboard sport=basketball league=nba | jq '.'
scripts/crawlora.sh /espn/team-roster sport=basketball league=nba team=lal | jq '.'
# SofaScore live + match detail:
scripts/crawlora.sh /sofascore/live-events sport=football | jq '.'
scripts/crawlora.sh /sofascore/event id=<event-id> | jq '.'
# MLB:
scripts/crawlora.sh /mlb/schedule date=2026-08-10 | jq '.'
scripts/crawlora.sh /mlb/player-stats id=<mlb-id> group=hitting | jq '.'
# Strava:
scripts/crawlora.sh /strava/challenges | jq '.'
scripts/crawlora.sh /strava/routes sport=hiking country=<country-slug> region=<region-slug> | jq '.'
Raw curl fallback:
curl -fsS -H "x-api-key: $CRAWLORA_API_KEY" \
"https://api.crawlora.net/api/v1/espn/standings?sport=football&league=nfl" | jq '.'
See reference/endpoints.md for every ESPN,
SofaScore, MLB, and Strava endpoint this skill uses.
/espn/scoreboard or /sofascore/live-events
polled on an interval to report score changes as they happen./sofascore/event-h2h (history) + /sofascore/event-odds
(market expectation) + both teams' /sofascore/team-events (recent form)./mlb/league-stats or /espn/rankings for
top performers, then /mlb/player-stats / /espn/athlete for the detail./mlb/team-roster + /mlb/transactions to
track who's been added or dropped this week.2xx; free tier 2,000 credits/mo.
Key at https://crawlora.net.CRAWLORA_API_KEY only — never hardcode, query-param, or commit it.sport/league
params — check reference/endpoints.md for the accepted values before
assuming a league is supported.country/region are platform-specific slugs, not free-text
names — the exact slug format isn't in the tool schema; verify a working
value at crawlora.net/docs
or the playground
if /strava/routes 404s — /strava/challenges needs no params and is a
safe starting point.