Skip to content
Back to skills

003 Name Skill 3ac3579a

ASecurity

College Basketball (CBB) data via ESPN public endpoints — scores, standings, rosters, schedules, game summaries, play-by-play, win probability, rankings, futures, team/player stats, and news for NCAA Division I men's basketball. Zero config, no API keys. Use when: user asks about college basketball scores, March Madness, NCAA tournament, standings, rankings, team rosters, schedules, play-by-play, betting futures, team/player statistics, or CBB news. Don't use when: user asks about NBA/WNBA (...

  • 9 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 11, 2026
datapythongobashapi

Works with

  • cli
  • api

Security analysis

A96/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro shows the line behind each finding and how to fix it

Scanned October 11, 2026

npx -y skills add tools-only/X-Skills --skill 003-name-skill_3ac3579a --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of 003 Name Skill 3ac3579a?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for 003 Name Skill 3ac3579a
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/tools-only-003-name-skill-3ac3579a/badge)](https://www.skillsdirectory.com/skills/tools-only-003-name-skill-3ac3579a)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

SKILL.md
---
name: cbb-data
description: |
  College Basketball (CBB) data via ESPN public endpoints — scores, standings, rosters, schedules, game summaries, play-by-play, win probability, rankings, futures, team/player stats, and news for NCAA Division I men's basketball. Zero config, no API keys.

  Use when: user asks about college basketball scores, March Madness, NCAA tournament, standings, rankings, team rosters, schedules, play-by-play, betting futures, team/player statistics, or CBB news.
  Don't use when: user asks about NBA/WNBA (use nba-data/wnba-data), college football (use cfb-data), or non-sports topics.
license: MIT
metadata:
  author: machina-sports
  version: "0.1.0"
---

# College Basketball Data (CBB)

## Setup

Before first use, check if the CLI is available:
```bash
which sports-skills || pip install sports-skills
```
If `pip install` fails with a Python version error, the package requires Python 3.10+. Find a compatible Python:
```bash
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-skills
```
No API keys required.

## Quick Start

Prefer the CLI — it avoids Python import path issues:
```bash
sports-skills cbb get_scoreboard
sports-skills cbb get_rankings
sports-skills cbb get_standings --group=23
```

## Important: College vs. Pro Differences

College basketball has 360+ D1 teams (vs 30 NBA teams), organized by **conferences**:
- **Standings are per-conference** — use the `group` parameter to filter
- **Rankings replace leaders** — college uses AP Top 25 and Coaches Poll instead of league-wide stat leaders
- **Ranked teams** have a `rank` field (null = unranked) on scoreboard competitors
- **Many games per day** — during the season, 50+ games can be scheduled daily
- **March Madness** — the NCAA Tournament runs in March/April with 68 teams

## Conference IDs (group parameter)

Use the `--group` parameter for standings and scoreboard filtering:

| Conference | Group ID | Conference | Group ID |
|-----------|----------|-----------|----------|
| ACC | 2 | Big 12 | 8 |
| SEC | 23 | Big Ten | 7 |
| Big East | 4 | Pac-12 | 21 |
| American | 62 | Mountain West | 44 |
| Atlantic 10 | 3 | West Coast | 26 |
| Missouri Valley | 18 | Colonial | 10 |

**Tip:** Conference IDs are different from CFB. Use `get_standings` without a group to see all conferences.

## Commands

### get_scoreboard
Get live/recent college basketball scores.
- `date` (str, optional): Date in YYYY-MM-DD format. Defaults to today.
- `group` (int, optional): Conference group ID to filter.
- `limit` (int, optional): Max events to return.

### get_standings
Get college basketball standings by conference.
- `season` (int, optional): Season year. Defaults to current.
- `group` (int, optional): Conference ID to filter (see table above).

### get_teams
Get all D1 men's college basketball teams (360+ teams).
No parameters required.

### get_team_roster
Get full roster for a college basketball team.
- `team_id` (str, required): ESPN team ID.

### get_team_schedule
Get schedule for a specific college basketball team.
- `team_id` (str, required): ESPN team ID.
- `season` (int, optional): Season year. Defaults to current.

### get_game_summary
Get detailed game summary with box score and player stats.
- `event_id` (str, required): ESPN event ID.

### get_rankings
Get college basketball rankings — AP Top 25, Coaches Poll.
- `season` (int, optional): Season year. Defaults to current.
- `week` (int, optional): Week number for historical rankings.

Returns `polls[]` with poll name and `teams[]` containing rank, previous rank, record, points, and first-place votes.

### get_news
Get college basketball news articles.
- `team_id` (str, optional): ESPN team ID to filter news by team.

### 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 college basketball schedule.
- `date` (str, optional): Date in YYYY-MM-DD format.
- `season` (int, optional): Season year. Defaults to current.
- `group` (int, optional): Conference group ID to filter.

### get_futures
Get college basketball futures/odds markets (National Championship, Player of the Year, 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 ID
- `season_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 ID
- `season_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.

## Common Team IDs

| Team | ID | Team | ID |
|------|-----|------|-----|
| Duke | 150 | Kansas | 2305 |
| Kentucky | 96 | North Carolina | 153 |
| UConn | 41 | Gonzaga | 2250 |
| Villanova | 222 | UCLA | 26 |
| Michigan State | 127 | Arizona | 12 |
| Purdue | 2509 | Houston | 248 |
| Tennessee | 2633 | Auburn | 2 |
| Baylor | 239 | Creighton | 156 |

**Tip:** Use `get_teams` to get all team IDs, or look up ESPN URLs (e.g., espn.com/mens-college-basketball/team/_/id/150/duke → ID is 150).

## Examples

**User: "What are the college basketball rankings?"**
```bash
sports-skills cbb get_rankings
```

**User: "Show me SEC basketball standings"**
```bash
sports-skills cbb get_standings --group=23
```

**User: "What are today's college basketball scores?"**
```bash
sports-skills cbb get_scoreboard
```

**User: "Show me Duke's roster"**
```bash
sports-skills cbb get_team_roster --team_id=150
```

**User: "Get the box score for game 401638574"**
```bash
sports-skills cbb get_game_summary --event_id=401638574
```

**User: "What's Kansas's schedule this season?"**
```bash
sports-skills cbb get_team_schedule --team_id=2305
```

**User: "Who's favored to win March Madness?"**
```bash
sports-skills cbb get_futures --limit=10
```

**User: "Show me Duke's team stats"**
```bash
sports-skills cbb get_team_stats --team_id=150
```

## Error Handling

When a command fails, **do not surface raw errors to the user**. Instead:
1. If no events found, check if it's the off-season (CBB runs November–April)
2. If standings are empty without a group filter, try a specific conference
3. During March Madness, the scoreboard will have tournament games
4. Only report failure with a clean message after exhausting alternatives

## Season Structure

- **Non-Conference Season**: November – December
- **Conference Play**: January – early March
- **Conference Tournaments**: Early–mid March
- **NCAA Tournament (March Madness)**: Mid-March – early April
  - First Four, First/Second Round, Sweet 16, Elite 8, Final Four, Championship

## Troubleshooting

- **`sports-skills` command not found**: Run `pip install sports-skills`
- **No games found**: CBB is seasonal (Nov–Apr). Off-season scoreboard will be empty.
- **Too many games**: During the season, 50+ games per day. Use `--group` to filter by conference or `--limit` to cap results.
- **Rankings empty in off-season**: Rankings are published weekly during the season (November–March).
- **Roster format differs from NBA**: College rosters may be a flat list instead of positional groups.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.