Fantasy-Football-Draft-MCP
MCP server that acts as a live fantasy football draft assistant, syncing ESPN or Sleeper boards and providing pick recommendations with reasoning and survival odds.
README
Fantasy Football Draft Analyst (MCP Server)
A live draft assistant. Connect it to Claude, sync your ESPN or Sleeper draft board, and ask "who should I pick?" at every turn. It answers with a recommendation, the reasoning, and the odds each player survives to your next pick.
Tested end to end against live data: 631 players (551 veterans, 80 rookies) modelled from 247,284 plays across five seasons, priced against real 2026 preseason consensus.
Quick start
git clone https://github.com/OWNER/ff-draft-mcp.git
cd ff-draft-mcp
pip install -e .
# One-time data build (~3-6 min; downloads 5 seasons, then caches)
python setup_data.py
Add to claude_desktop_config.json:
{
"mcpServers": {
"fantasy-draft": {
"command": "python",
"args": ["-m", "ffdraft.server"],
"env": {
"FFDRAFT_SEASON": "2026",
"ESPN_SWID": "optional-for-private-espn-leagues",
"ESPN_S2": "optional-for-private-espn-leagues"
}
}
}
}
Then in Claude:
Set up my home league: 10 teams, full PPR, I pick 4th.
Set up my work league: 13 teams, half PPR, I pick 11th.
Switch to home. Sync my Sleeper draft 1234567890. Who should I pick?
Documentation
| Guide | What's in it |
|---|---|
| Quickstart | Install to first recommendation in ten minutes |
| Tool reference | Every tool, argument and environment variable |
| Methodology | How projections work and why the defaults are what they are |
| Troubleshooting | When something looks wrong |
| Examples | A full draft session, prompt snippets, sample ADP file |
| Security | ESPN cookies, network access, what's stored locally |
| Contributing | Tests, lint, and the bar for model changes |
| Changelog | Release history |
What it does
Recommends picks by opportunity cost, not raw value. Knowing a player is good is easy; knowing whether he'll still be there at your next turn is what decides who to take now. For each position the model walks the board top-down, accumulating the probability every better player is gone, and values a pick by its marginal gain over waiting.
At pick 6 with the top five off the board, that means recommending Amon-Ra St. Brown over Josh Allen — Allen grades as the highest-value player left, but has a 73% chance of lasting to pick 19, and the receiver has 8%.
Projects players from five seasons of open data. Offensive line from adjusted line yards and pressure allowed, neutral-script pace and run/pass split, five-year defensive strength by position, divisional schedule, injury history crossed with workload burden, positional aging curves. Computed from raw plays rather than scraped from ranking tables, so it recomputes under your scoring and doesn't break when a website changes its HTML.
Optimises for consistency. The default leans toward week-to-week reliability over raw ceiling. Tune it with one number.
Handles your actual leagues. PPR, half PPR, standard, superflex, TE premium, any size, any slot. Multiple leagues side by side with separate boards and drafts.
Separation and route efficiency from NGS tracking data — the open-data stand-in for paywalled charting. Validated against a published PFF table: TPRR within a few hundredths, ordering correct.
Rookies projected from draft capital, fitted to ten years of first-year outcomes.
Live sync from Sleeper (public API, no credentials), ESPN, or paste from anywhere.
Name matching that survives real drafts — JSN, CMC, Bijan, Hollywood Brown,
Joshua Palmer, and typos. Ambiguous names name their candidates rather than guessing.
Tools
| Tool | What it does |
|---|---|
configure_league |
Create or update a named league; makes it active |
list_leagues |
All your leagues and which is active |
switch_league |
Change active league; board and draft resume instantly |
remove_league |
Delete a league and its draft history |
refresh_data |
Rebuild the board from source. Run once before draft day |
sync_draft |
Pull the live board from Sleeper, ESPN, or pasted text |
who_should_i_pick |
The main one. Recommendation + reasoning for the pick on the clock |
best_available |
Next best players, sortable by value, consistency, or ADP bargain |
record_pick / undo_pick / reset_draft |
Manual board management |
draft_status |
Your roster and where the draft stands |
prewarm |
Build all caches before draft day so nothing computes on the clock |
rookie_report |
This year's rookie class, projected from draft capital |
resolve_names |
Check how names resolve before trusting a paste sync |
separation_report |
Separation, cushion, YPRR, TPRR — the open-data PFF analogue |
value_picks |
Where the model disagrees with the draft market |
draft_value_history |
Backtest: preseason rank vs actual finish, by round and position |
persistent_value_players |
Players who beat their draft cost year after year |
player_report |
Every modelled factor for one player |
compare_players |
Head to head, up to four |
team_context |
O-line ranks, pace, run/pass split, schedule for an NFL team |
defense_report |
Fantasy points allowed by position, 5-year view |
plan_my_draft |
Simulate all 16 of your picks from your slot |
model_settings |
Retune factor weights |
Data attribution
This project computes everything from open sources and ships no third-party data:
- nflverse — play-by-play, weekly stats, snap counts, injury reports, rosters, schedules, draft picks, combine.
- NFL Next Gen Stats (mirrored by nflverse) — separation, cushion, YAC over expected.
- dynastyprocess/data — FantasyPros expert consensus rank history.
Please respect the terms of those upstream projects. Nothing here scrapes paywalled sources, and no proprietary data is redistributed.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.