Docs: Nike MCP
This commit is contained in:
177
docs/nike_mcp.md
Normal file
177
docs/nike_mcp.md
Normal file
@@ -0,0 +1,177 @@
|
|||||||
|
# Nike MCP Tools
|
||||||
|
|
||||||
|
Nike exposes a [Model Context Protocol](https://modelcontextprotocol.io/) server over HTTP Streamable transport at `/mcp/`. All tools are read-only and pull live football (soccer) data from [TheSportsDB](https://www.thesportsdb.com/).
|
||||||
|
|
||||||
|
## Connecting
|
||||||
|
|
||||||
|
| Setting | Value |
|
||||||
|
|---------|-------|
|
||||||
|
| Transport | HTTP Streamable |
|
||||||
|
| Endpoint | `http://<host>:<port>/mcp/` |
|
||||||
|
| Default port | `8000` |
|
||||||
|
|
||||||
|
## Tools
|
||||||
|
|
||||||
|
### `get_team_info`
|
||||||
|
|
||||||
|
Get a team's profile: stadium, capacity, location, founded year, colors, and a short description.
|
||||||
|
|
||||||
|
**Parameters**
|
||||||
|
|
||||||
|
| Name | Type | Default | Description |
|
||||||
|
|------|------|---------|-------------|
|
||||||
|
| `team_name` | string | `"Toronto FC"` | Team name — e.g. `"Arsenal"`, `"TFC"` |
|
||||||
|
|
||||||
|
**Example**
|
||||||
|
```
|
||||||
|
get_team_info("Arsenal")
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### `get_roster`
|
||||||
|
|
||||||
|
Get the current squad for a team, grouped by position (Goalkeepers → Defenders → Midfielders → Attackers).
|
||||||
|
|
||||||
|
**Parameters**
|
||||||
|
|
||||||
|
| Name | Type | Default | Description |
|
||||||
|
|------|------|---------|-------------|
|
||||||
|
| `team_name` | string | `"Toronto FC"` | Team name |
|
||||||
|
|
||||||
|
**Notes**
|
||||||
|
- Requires a premium TheSportsDB key for live V2 squad data.
|
||||||
|
- Falls back to the locally cached roster when no premium key is configured.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### `get_player_info`
|
||||||
|
|
||||||
|
Get a player's profile: position, nationality, date of birth, current team, and status.
|
||||||
|
|
||||||
|
**Parameters**
|
||||||
|
|
||||||
|
| Name | Type | Default | Description |
|
||||||
|
|------|------|---------|-------------|
|
||||||
|
| `player_name` | string | _(required)_ | Player name |
|
||||||
|
|
||||||
|
**Notes**
|
||||||
|
- With a premium key, also returns height, weight, squad number, and a biography.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### `get_fixtures`
|
||||||
|
|
||||||
|
Get recent results and upcoming matches for a team.
|
||||||
|
|
||||||
|
**Parameters**
|
||||||
|
|
||||||
|
| Name | Type | Default | Description |
|
||||||
|
|------|------|---------|-------------|
|
||||||
|
| `team_name` | string | `"Toronto FC"` | Team name |
|
||||||
|
| `status` | string | `"all"` | `"all"`, `"upcoming"`, or `"past"` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### `get_standings`
|
||||||
|
|
||||||
|
Get the league table with points, goal difference, and current form.
|
||||||
|
|
||||||
|
**Parameters**
|
||||||
|
|
||||||
|
| Name | Type | Default | Description |
|
||||||
|
|------|------|---------|-------------|
|
||||||
|
| `league` | string | `"American Major League Soccer"` | League name (see aliases below) |
|
||||||
|
| `season` | string | `"2026"` | Season — `"2026"` for MLS, `"2025-2026"` for European leagues |
|
||||||
|
|
||||||
|
**Supported league aliases**
|
||||||
|
|
||||||
|
| Alias | League |
|
||||||
|
|-------|--------|
|
||||||
|
| `MLS`, `Major League Soccer`, `American Major League Soccer` | MLS (ID 4346) |
|
||||||
|
| `EPL`, `Premier League`, `English Premier League` | Premier League (ID 4328) |
|
||||||
|
|
||||||
|
For other leagues, pass the full league name and Nike will attempt to resolve it automatically.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### `get_match_result`
|
||||||
|
|
||||||
|
Get the result of a match for a team on a specific date.
|
||||||
|
|
||||||
|
**Parameters**
|
||||||
|
|
||||||
|
| Name | Type | Default | Description |
|
||||||
|
|------|------|---------|-------------|
|
||||||
|
| `team_name` | string | _(required)_ | Team name |
|
||||||
|
| `match_date` | string | _(required)_ | Date in `YYYY-MM-DD` format |
|
||||||
|
|
||||||
|
**Example**
|
||||||
|
```
|
||||||
|
get_match_result("Toronto FC", "2026-03-09")
|
||||||
|
```
|
||||||
|
|
||||||
|
Returns the score, venue, referee, attendance, and match status.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### `get_match_detail`
|
||||||
|
|
||||||
|
Get deep detail for a specific match: full statistics, starting lineups, substitutes, and a minute-by-minute timeline (goals, cards, substitutions).
|
||||||
|
|
||||||
|
**Parameters**
|
||||||
|
|
||||||
|
| Name | Type | Default | Description |
|
||||||
|
|------|------|---------|-------------|
|
||||||
|
| `event_id` | integer | _(required)_ | TheSportsDB event ID |
|
||||||
|
|
||||||
|
**Notes**
|
||||||
|
- Requires a premium TheSportsDB key — returns an error message otherwise.
|
||||||
|
- Obtain `event_id` from `get_fixtures` or `get_match_result` first.
|
||||||
|
|
||||||
|
**Typical workflow**
|
||||||
|
```
|
||||||
|
# Step 1 — find the event ID
|
||||||
|
get_fixtures("Toronto FC", "past")
|
||||||
|
|
||||||
|
# Step 2 — get the full detail
|
||||||
|
get_match_detail(1896543)
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### `get_livescores`
|
||||||
|
|
||||||
|
Get current live soccer scores worldwide, grouped by league.
|
||||||
|
|
||||||
|
**Parameters**: none
|
||||||
|
|
||||||
|
**Notes**
|
||||||
|
- Requires a premium TheSportsDB key — returns an error message otherwise.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Prompt
|
||||||
|
|
||||||
|
### `football_analyst`
|
||||||
|
|
||||||
|
Primes the assistant with football analyst context: a description of the Nike platform, the list of followed teams, and a summary of available tools.
|
||||||
|
|
||||||
|
Use this prompt at the start of a session to get role-appropriate behaviour without having to describe the tools manually.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Premium vs. free tier
|
||||||
|
|
||||||
|
Some tools require a premium [TheSportsDB](https://www.thesportsdb.com/api.php) API key (set via `SPORTSDB_KEY` environment variable). The free key is `3`.
|
||||||
|
|
||||||
|
| Tool | Free tier | Premium required |
|
||||||
|
|------|-----------|-----------------|
|
||||||
|
| `get_team_info` | ✓ | |
|
||||||
|
| `get_roster` | Cached data only | Live V2 squad |
|
||||||
|
| `get_player_info` | Basic profile | Height, weight, number, bio |
|
||||||
|
| `get_fixtures` | ✓ | |
|
||||||
|
| `get_standings` | ✓ | |
|
||||||
|
| `get_match_result` | ✓ | |
|
||||||
|
| `get_match_detail` | — | ✓ (required) |
|
||||||
|
| `get_livescores` | — | ✓ (required) |
|
||||||
Reference in New Issue
Block a user