espn-fantasy-football-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ESPN_S2 | No | The espn_s2 cookie value, kept URL-encoded. Required for private league reads and all write operations. | |
| ESPN_SWID | No | The SWID cookie value, including braces. Also identifies the member making a transaction. Required for private league reads and all write operations. | |
| ESPN_SEASON | No | Integer NFL season year. Defaults to the current calendar year. Set it explicitly when viewing a season after New Year's Day. | |
| ESPN_TEAM_ID | No | Integer fantasy team id from your team's URL. Used when a tool omits teamId. | |
| ESPN_LEAGUE_ID | Yes | Integer league id from the league URL's leagueId parameter. Required. | |
| ESPN_READ_ONLY | No | 1 or true disables every write tool, including dry runs. Defaults to false. | false |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_leagueA | Inspect league settings, lineup slots, waiver rules and team standings before managing a team. Team ids identify ESPN fantasy teams. |
| get_rosterA | Inspect a team's lineup, eligible slots, injuries, opponents and projections before making moves. teamId is an ESPN fantasy team id and defaults to ESPN_TEAM_ID. Player ids are ESPN ids, including negative D/ST ids. |
| get_free_agentsA | Find available players to add or claim, with optional position filters and ownership or projection sorting. Player ids are ESPN ids, including negative D/ST ids. |
| search_playersA | Look up ESPN player ids and fantasy team ownership by a case-insensitive name substring, across rosters, free agents and waivers. Player ids are ESPN ids, including negative D/ST ids. |
| get_matchupsA | Check scores and live projections for a week, with the configured team's matchup marked mine. Team ids are ESPN fantasy team ids. |
| get_transactionsA | Inspect recent league activity, newest first, and find transaction ids for cancelling pending claims. Items contain ESPN player ids only, without names. Player ids are ESPN ids, including negative D/ST ids. |
| set_lineupA | Move rostered players to eligible slots such as QB, FLEX, BE or IR. List every move, including the player leaving an occupied slot. No counter-moves are added. Player ids are ESPN ids, including negative D/ST ids. teamId is an ESPN fantasy team id and defaults to ESPN_TEAM_ID. week defaults to the current NFL week. dryRun previews the payload without posting. Requires ESPN_S2 and ESPN_SWID. |
| add_playerA | Add an available free agent, optionally dropping a rostered player in the same transaction. Use submit_waiver_claim for players on waivers. Player ids are ESPN ids, including negative D/ST ids. teamId is an ESPN fantasy team id and defaults to ESPN_TEAM_ID. week defaults to the current NFL week. dryRun previews the payload without posting. Requires ESPN_S2 and ESPN_SWID. |
| drop_playerA | Release one player from your fantasy team. ESPN enforces roster locks and league rules. Player ids are ESPN ids, including negative D/ST ids. teamId is an ESPN fantasy team id and defaults to ESPN_TEAM_ID. week defaults to the current NFL week. dryRun previews the payload without posting. Requires ESPN_S2 and ESPN_SWID. |
| submit_waiver_claimA | Claim a player on waivers with an optional drop and a nonnegative bid, defaulting to 0. ESPN processes the claim under league rules. Player ids are ESPN ids, including negative D/ST ids. teamId is an ESPN fantasy team id and defaults to ESPN_TEAM_ID. week defaults to the current NFL week. dryRun previews the payload without posting. Requires ESPN_S2 and ESPN_SWID. |
| cancel_waiver_claimA | Cancel a pending waiver claim using its ESPN transactionId from get_transactions. teamId is an ESPN fantasy team id and defaults to ESPN_TEAM_ID. week defaults to the current NFL week. dryRun previews the payload without posting. Requires ESPN_S2 and ESPN_SWID. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 11 tools
Most tools target distinct actions and resources: get_* tools cover reads while add/drop/set_lineup and waiver tools cover writes. The main potential confusion is between add_player and submit_waiver_claim, and between search_players and get_free_agents, but the descriptions clearly separate free agents from waivers and lookup from listing.
All tool names follow a consistent snake_case verb_noun pattern, such as get_league, set_lineup, drop_player, and cancel_waiver_claim. The verb choices are predictable and match the operation performed.
11 tools is well-scoped for a fantasy football management server, covering league info, rosters, players, transactions, lineup changes, and waiver operations. Each tool addresses a distinct core workflow without unnecessary bloat.
The tool set covers the major fantasy football workflows: viewing league/roster/matchup data, searching and adding players, setting lineups, and managing waiver claims. A notable gap is lack of trade support, which is a common fantasy football operation, but the core management lifecycle is otherwise complete.