Fantasy Football MCP Server
Provides sentiment analysis from Reddit for player buzz and injury updates.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Fantasy Football MCP Serveroptimize my lineup for week 10"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Fantasy Football MCP Server
A personal, single-user Model Context Protocol (MCP) server for Yahoo Fantasy Football. It exposes league, roster, matchup, waiver-wire, draft, and lineup-analysis data to AI clients while keeping the underlying fantasy data source separate from the model.
Current status
This project is built and run as a single-user app: you supply your own Yahoo developer credentials and tokens, and the server serves your leagues to your MCP client. It is not intended to be deployed by someone else as a shared, multi-user service.
Experimental hosted, multi-user development lives on the multi-user-app branch. See its roadmap for planned work toward a possible ChatGPT app. That branch is not a ready-to-deploy shared service; use main for personal use.
Note that Yahoo Fantasy Sports API access now requires manual approval from Yahoo, and Yahoo currently provides read access only. Write actions such as adding/dropping players or changing lineups are therefore not part of the tool surface.
Related MCP server: Yahoo Fantasy MCP
Core capabilities
Multi-league Yahoo fantasy football discovery
League settings and standings
Team rosters and weekly matchups
Free-agent and waiver-wire research
Team comparisons
Draft rankings, recommendations, and draft-state analysis
Lineup optimization
Optional external player-context/enrichment integrations
MCP tools
The main FastMCP server currently exposes:
ff_get_leaguesff_get_league_infoff_get_standingsff_get_rosterff_get_matchupff_get_playersff_compare_teamsff_build_lineupff_get_draft_resultsff_get_waiver_wireff_get_draft_rankingsff_get_draft_recommendationff_analyze_draft_stateff_analyze_reddit_sentiment
The server also contains maintenance tools used for local operation and troubleshooting.
Installation
git clone https://github.com/derekrbreese/fantasy-football-mcp-public.git
cd fantasy-football-mcp-public
pip install -r requirements.txtCopy .env.example to .env and provide your Yahoo developer credentials. Do not commit .env, Yahoo token JSON files, OAuth state, refresh tokens, or other authentication artifacts.
Yahoo API access
Creating a Yahoo developer application is no longer sufficient by itself to use the Fantasy Sports API. Apply for Fantasy API access through Yahoo's developer access process and associate the approval with your existing client ID.
Yahoo's current access model is read-only. This project therefore treats league-management recommendations separately from transaction execution.
Authentication
The server reads your Yahoo credentials from environment variables:
YAHOO_CLIENT_ID=...
YAHOO_CLIENT_SECRET=...
YAHOO_ACCESS_TOKEN=...
YAHOO_REFRESH_TOKEN=...
YAHOO_GUID=...This single-user mode is the supported way to run the app.
Running the MCP server
FastMCP HTTP server:
python fastmcp_server.pyBy default the server listens on port 8000 locally. Cloud platforms can set PORT.
Traditional stdio MCP entry point:
python fantasy_football_multi_league.pyDocker:
docker build -t fantasy-football-mcp .
docker run --env-file .env -p 8080:8080 fantasy-football-mcpAuthentication files and token JSON files are explicitly excluded from the Docker build context.
Testing
pytestCredential-isolation tests cover request-scoped token handling and user-namespaced cache keys.
Security notes
Even as a single-user app, keep credentials out of the repository:
Never commit Yahoo access or refresh tokens.
Never bake your tokens into a container image.
Keep your Yahoo client secret server-side.
Rotate any credential that has ever been committed to a public Git history.
If a secret was previously committed, deleting the current file is not sufficient by itself: revoke/rotate the credential and, when appropriate, rewrite the repository history.
Project structure
fantasy-football-mcp-public/
├── fastmcp_server.py
├── fantasy_football_multi_league.py
├── lineup_optimizer.py
├── matchup_analyzer.py
├── position_normalizer.py
├── src/
│ ├── api/
│ │ ├── yahoo_client.py
│ │ └── yahoo_credentials.py
│ ├── agents/
│ ├── handlers/
│ ├── models/
│ ├── services/
│ └── strategies/
├── tests/
├── utils/
├── Dockerfile
└── requirements.txtLicense
See LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Read-only ESPN, Sleeper, and Fantrax fantasy leagues for Claude, ChatGPT, and other AI tools.
- NFL MCPOAuthcom.nflmcp
NFL analytics tools for AI agents: stats, fantasy, injuries, schedules, and advanced analysis.
Read-only fantasy analysis for ESPN, Yahoo, and Sleeper leagues via MCP
Live sports stats and pre-computed analysis for AI assistants across NBA, MLB, NFL, and NHL.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceConnect ESPN & Yahoo fantasy leagues to AI assistants via MCP. Read-only tools for rosters, standings, matchups, free agents, and league info across football and baseball.19MIT
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that provides read-only access to Yahoo Fantasy Sports data, enabling AI assistants to query league standings, player stats, matchups, and rosters.3MIT
- FlicenseAqualityCmaintenanceEnables natural language interaction with Sleeper Fantasy Football API data, allowing queries about leagues, players, matchups, draft results, and trade analysis.1321-
- FlicenseNot gradedqualityBmaintenanceManages Yahoo Fantasy Baseball teams via AI, allowing natural language queries for roster updates, trade analysis, waiver wire, and league insights.4-