ESPN draft and lineup tools for Codex and other MCP clients, with browser sign-in, approval modes, per-team limits, and server monitoring.
- ✓Open-source license (MIT)
- ✓Actively maintained (<30d)
- ✓Clear description
- ✓Topics declared
- ✓Documented (README)
claude mcp add fantasy-football-manager -- uvx fantasy-football-manager{
"mcpServers": {
"fantasy-football-manager": {
"command": "uvx",
"args": ["fantasy-football-manager"]
}
}
}MCP Servers overview
# Fantasy Football Manager
ESPN fantasy football draft and lineup tools for **Codex and other Model Context Protocol (MCP) clients**.
Connect your league, sync its roster, and calculate a legal weekly lineup from current projections.
The same package provides a draft assistant with continuous Monte Carlo simulations and a server coordinator for multiple teams.
<!-- mcp-name: io.github.krmisystems/fantasy-football-manager -->
The **manager MCP server** provides 17 tools for analysis, policy, and league state.
The **ESPN MCP companion** provides 13 tools for browser observation and controlled draft or lineup submissions.
ESPN requests use your signed-in browser session. This independent project does not supply an ESPN account or bypass sign-in.
Use browser sign-in without manually copying cookies between profiles.
## Start with a weekly lineup
Authenticated sign-in, roster sync, and advisory lineup analysis are verified workflows.
Start in advisory mode to inspect the recommendation before enabling live actions.
1. [Install and connect both MCP servers](#install-from-pypi).
2. Read the saved action modes with `get_manager_config`.
3. Keep `set_lineup` in advisory mode for the first check.
4. Call `espn_connect` with your league ID, team ID, season, `phase="season"`, and scoring `week`.
5. Sign in to ESPN in the dedicated Chrome window when required.
6. Call `espn_sync` to import the observed roster, projections, and player locks.
7. Call `recommend_lineup` on the manager to calculate the weekly lineup.
8. Read `espn_get_status` to check the context, observation age, and pending actions.
The result includes the legal lineup and estimated projection change when the required inputs are complete.
Missing projections or lock evidence can prevent a recommendation or submission.
Selected-team lock evidence does not establish league-wide power rankings.
```mermaid
flowchart LR
Client[Codex or MCP client] --> Companion[ESPN MCP companion]
Companion --> Chrome[Dedicated signed-in Chrome]
Chrome --> ESPN[ESPN league]
Companion --> State[Per-league SQLite state]
Client --> Manager[Manager MCP analysis and policy]
State --> Manager
Manager --> Result[Lineup or draft recommendation]
```
Read the [ESPN workflow and tool reference](https://github.com/krmisystems/fantasy-football-manager/blob/main/docs/ESPN_AUTOMATION.md) for configuration and submission steps.
Check the [versioned compatibility matrix](https://github.com/krmisystems/fantasy-football-manager/blob/main/docs/ESPN_COMPATIBILITY.md) for supported layouts, regression fixtures, and live evidence.
## Choose how actions run
| Mode | Behavior |
|---|---|
| Advisory | Calculate recommendations without submitting a live action. |
| Review | Prepare an exact proposal. Submit it after explicit confirmation. |
| Automatic | Submit qualifying draft picks or lineup swaps within the saved policy. No per-action confirmation is required. |
| Disabled | Block the selected action. |
Use `update_manager_config` to replace the full config with its current revision.
Read that config before changing one action mode. Strategy preferences do not grant execution permission.
For lineup changes with approval, use review mode and confirm each exact proposal.
For season automation, call `espn_start_automation` after connecting to the explicit week and setting the authorized `set_lineup` mode.
Each intermediate lineup swap must meet the configured improvement limit.
Some optimized lineups require intermediate swaps that the limit blocks.
A confirmed swap does not mean the full optimized lineup was applied.
Each live submission receives a durable claim before the browser click.
The service verifies the resulting ESPN state. An uncertain result blocks another click until reconciliation.
Use `espn_stop_automation` to pause new actions for that league's data directory.
It does not undo an action already submitted.
## Draft with continuous simulations
Connect with `phase="draft"`, then call `espn_sync` to verify complete history and the current pick.
Set the requested draft strategy, action mode, and limits before calling `espn_start_automation`.
Automatic submissions require the correct team on the clock and verified disabled ESPN Autopick.
The draft engine accounts for snake order, roster caps, starter completion, and five strategy preferences.
It recalculates after input changes and combines completed simulation batches for unchanged inputs.
Its estimates use a **two-pick horizon**, projected player values, and simulated opponent choices.
Availability estimates are conditional. They do not guarantee that a player survives to the next pick.
More trials do not correct stale inputs or projection errors. The model does not report championship odds.
The [fifth draft trial](https://github.com/krmisystems/fantasy-football-manager/blob/main/docs/FIFTH_DRAFT_ACCEPTANCE.md) completed with **13 manager-confirmed picks, two direct host-browser picks, and one unattributed selection**.
An opponent selection without a season projection blocked history normalization. The operator stopped the worker and completed the final two turns.
The host capture contains all 160 selections and matches the 132 picks previously stored by the server.
Installed v0.3.1 execution methods remained unchanged. This run required operator recovery and does not verify unattended completion.
Version 0.3.2 separates verified opponent identity from projected value. Its regression evidence is separate from this live run.
The earlier [fourth draft trial](https://github.com/krmisystems/fantasy-football-manager/blob/main/docs/FOURTH_DRAFT_ACCEPTANCE.md) verified all **160 league selections and 16 manager-confirmed picks**.
It recorded **zero ESPN Autopicks and zero host-browser `DRAFT` clicks**.
Installed v0.3.1 execution methods were unchanged. A private launcher handled collection and lifecycle.
One browser-control error occurred before the first authorization. A later check recovered before submission.
The run required no package patches, restart, or manual recovery.
A live Ravens D/ST selection succeeded. The record does not establish which autocomplete branch ran.
The [live draft trial](https://github.com/krmisystems/fantasy-football-manager/blob/main/docs/LIVE_DRAFT_ACCEPTANCE.md) completed a 16-player roster in a 10-team PPR snake draft.
It recorded **13 manager-confirmed picks and 3 ESPN Autopicks**.
Startup failures and an autocomplete timeout caused platform fallback selections.
The run required compatibility patches and manual recovery. It was not an unattended draft from start to finish.
Its runtime used installed v0.2.1 dependencies with changing working-tree patches.
Do not attribute that live result to an unchanged released wheel.
The [third draft trial](https://github.com/krmisystems/fantasy-football-manager/blob/main/docs/THIRD_DRAFT_ACCEPTANCE.md) also finished with 13 manager-confirmed picks and three platform fallbacks.
It exposed team-name whitespace and D/ST selector failures. Version 0.3.1 fixes both cases in isolated Chrome tests.
The browser handoff missed the final two turns. This trial also required operator recovery.
## Keep team management running
`espn_start_automation` runs inside the MCP process.
Use `espn_start_standalone_worker` for a local worker that continues after Codex closes while that computer remains available.
For operation without the client PC, install the [season coordinator on a server](https://github.com/krmisystems/fantasy-football-manager/blob/main/docs/SERVER.md).
The server retains its own signed-in Chrome profile and visits configured teams serially.
Each team keeps a separate SQLite database, policy, explicit week, and pending claims.
One shared profile lease prevents simultaneous browser control.
The optional PostgreSQL archive preserves labeled evidence. Private backups preserve the operational databases and configuration.
After the fifth draft, the v0.3.2 server verified fresh Week 1 observations, selected-team locks, and current lineup calculations for **five exact team contexts**.
The verified handoff recorded zero new lineup authorizations and zero unresolved authorized claims.
These observations do not verify live server lineup submission or an unattended season.
Read [server acceptance](https://github.com/krmisystems/fantasy-football-manager/blob/main/docs/SERVER_ACCEPTANCE.md) for restart, archive, and recovery evidence.
All three additional draft trials are complete, with their failures and execution sources recorded separately.
Five-team season outcomes and live server lineup submission remain [unverified](https://github.com/krmisystems/fantasy-football-manager/blob/main/docs/MULTI_TEAM_ACCEPTANCE.md).
## Install from PyPI
Version 0.3.2 preserves verified opponent draft history when a season projection is missing.
Version 0.3.1 fixed draft team-name whitespace and D/ST selectors.
Version 0.3.0 introduced server season scheduling, durable evidence, and a PostgreSQL archive.
Check the [PyPI project](https://pypi.org/project/fantasy-football-manager/) and [distribution status](https://github.com/krmisystems/fantasy-football-manager/blob/main/docs/DISCOVERY_ACCEPTANCE.md) for available releases.
The manager has an active [MCP Registry record](https://registry.modelcontextprotocol.io/v0.1/servers/io.github.krmisystems%2Ffantasy-football-manager/versions/latest).
Use Python 3.11 or later, [uv](https://docs.astral.sh/uv/), and installed Google Chrome.
```sh
uv tool install fantasy-football-manager
fantasy-football-manager --help
fantasy-football-espn --help
```
## Install from source
For development, run these commands from the repository checkout:
```sh
uv sync --locked --dev
uv tool install --force .
fantasy-football-manager --help
fantasy-football-espn --help
```
## Connect the commands
Register both commands with Codex, or use the [Codex plugin instructions](https://github.com/krmisystems/fantasy-football-manager/blob/maWhat people ask about fantasy-football-manager
What is krmisystems/fantasy-football-manager?
+
krmisystems/fantasy-football-manager is mcp servers for the Claude AI ecosystem. ESPN draft and lineup tools for Codex and other MCP clients, with browser sign-in, approval modes, per-team limits, and server monitoring. It has 1 GitHub stars and its last recorded update is dated 2026-09-08.
How do I install fantasy-football-manager?
+
You can install fantasy-football-manager by cloning the repository (https://github.com/krmisystems/fantasy-football-manager) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is krmisystems/fantasy-football-manager safe to use?
+
Our security agent has analyzed krmisystems/fantasy-football-manager and assigned a Trust Score of 95/100 (tier: Verified). See the full breakdown of passed checks and flags on this page.
Who maintains krmisystems/fantasy-football-manager?
+
krmisystems/fantasy-football-manager is maintained by krmisystems. The last recorded GitHub activity is dated 2026-09-08, with 0 open issues.
Are there alternatives to fantasy-football-manager?
+
Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.
Deploy fantasy-football-manager to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/krmisystems-fantasy-football-manager)<a href="https://claudewave.com/repo/krmisystems-fantasy-football-manager"><img src="https://claudewave.com/api/badge/krmisystems-fantasy-football-manager" alt="Featured on ClaudeWave: krmisystems/fantasy-football-manager" width="320" height="64" /></a>More MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
The fastest path to AI-powered full stack observability, even for lean teams.
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!