Fantasy Football Draft Analyst (MCP Server)

A live draft assistant. Connect it to Claude, sync your ESPN or Sleeper draft board, andask "who should I pick?" at every turn. It answers with a recommendation, the reasoning,and the odds each player survives to your next pick.

CIPython 3.10+License: MIT

Tested end to end against live data: 631 players (551 veterans, 80 rookies) modelledfrom 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 iseasy; knowing whether he'll still be there at your next turn is what decides who to takenow. For each position the model walks the board top-down, accumulating the probabilityevery 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 overJosh Allen — Allen grades as the highest-value player left, but has a 73% chance oflasting to pick 19, and the receiver has 8%.

Projects players from five seasons of open data. Offensive line from adjusted lineyards and pressure allowed, neutral-script pace and run/pass split, five-year defensivestrength 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 overraw ceiling. Tune it with one number.

Handles your actual leagues. PPR, half PPR, standard, superflex, TE premium, anysize, 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 forpaywalled charting. Validated against a published PFF table: TPRR within a fewhundredths, 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 expertconsensus rank history.

Please respect the terms of those upstream projects. Nothing here scrapes paywalledsources, and no proprietary data is redistributed.

MCP Server · Populars

MCP Server · New

    lyc403223157-source

    Knowledge Inbox

    Local-first knowledge ingestion for AI agents and Obsidian

    ipiton

    agent-memory-mcp

    MCP server that gives AI agents persistent memory with semantic search

    Community ipiton
    dialog-tools

    Dialog MCP Server

    Turn Reddit's chaos into structured insights with full citations. MCP server for competitive analysis, customer discovery, and market research. Zero-setup hosted solution with semantic search across 20,000+ subreddits.

    Community dialog-tools
    Bevel-Software

    hexis

    Git-backed skills, tools & context for AI agents

    Community Bevel-Software
    jonashertner

    OpenCaseLaw

    Open Swiss legal corpus + MCP server: 1M+ court decisions (1875–today), 21k laws, 10M-edge citation graph, 42 MCP tools. CC0 data, MIT code. Live at mcp.opencaselaw.ch

    Community jonashertner