Skip to main content
Glama
sdotj
by sdotj

SleepBot

An MCP server that connects Claude to fantasy football leagues. Phase 1: read-only tools over Sleeper's public API (no auth required). Built to extend to write actions, ESPN, and multiple leagues without changing the tool interface.

Architecture

The core is platform-agnostic. Every tool talks to a LeagueAdapter interface, never to a platform SDK directly:

tools ──▶ LeagueAdapter (interface) ◀── SleeperAdapter ──▶ api.sleeper.app
  │                                       (EspnAdapter later)
  └──▶ config (leagues[] registry)

Adding a league or a platform is a config change, not a code change. The architecture is mapped with Cairn in cairn.blueprint; run cairn scan to reconcile the map against the code.

Related MCP server: Yahoo Fantasy Baseball MCP

Setup

npm install
cp config/leagues.example.json config/leagues.json   # then edit with your league
npm run build

Find your Sleeper league id in the app URL or via https://api.sleeper.app/v1/user/<username>/leagues/nfl/<season>.

config/leagues.json

{
  "leagues": [
    {
      "id": "my-main-league",        // your own label, passed to every tool
      "platform": "sleeper",         // "sleeper" | "espn"
      "sleeper": { "leagueId": "123456789012345678", "username": "yourusername" }
    }
  ]
}

Secrets are never stored inline — a value like "env:ESPN_S2" is resolved from the environment at runtime (see .env.example). Phase 1 needs no secrets.

Run

npm start          # serves over stdio (built)
npm run dev        # serves over stdio (tsx, no build)

Register with Claude Code

// .mcp.json / claude mcp add
{
  "mcpServers": {
    "sleepbot": { "command": "node", "args": ["dist/index.js"] }
  }
}

Tools (Phase 1 — all read-only)

Tool

Purpose

list_leagues

Configured leagues (from config, no API call)

get_league_info

Settings, scoring, season, roster positions

get_rosters

Every roster: starters, bench, IR (player names resolved), record

get_my_roster

Your own roster, identified from the configured username

get_matchups

Weekly matchups + scores (defaults to current week)

get_standings

Ranked by wins, then points-for

get_transactions

Trades, waivers, add/drops (defaults to current week)

search_players

Players by name, filter by position/team

get_trending_players

Sleeper's most-added / most-dropped

Every tool takes your leagueId label, so multi-league support is just "pass a different id." Set sleeper.username in config and rosters/standings/matchups are flagged with isYou, so SleepBot knows which team is yours without asking.

Run the tests with npm test.

Roadmap

  • Phase 2 — Sleeper write actions (confirm-by-default) + rules engine (src/rules, stubbed)

  • Phase 3 — local GUI (Vite/React) over the same tools

  • Phase 4EspnAdapter against ESPN's cookie-based API, same interface

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    B
    quality
    C
    maintenance
    Enables comprehensive Sleeper Fantasy Football integration with Claude, providing real-time player projections, historical performance analytics, league management, and waiver wire analysis. Supports advanced NFL metrics, lineup optimization, and matchup analysis for fantasy football decision-making.
    6
    12
    1
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables Claude to interact with Yahoo Fantasy Baseball and Basketball leagues, allowing roster analysis, matchup tracking, free agent browsing, and player stats retrieval via natural language.
    1
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI models to manage and query fantasy sports leagues through the Sleeper API, supporting tasks like player lookups, league activity, and draft management.
    50
    MIT

View all related MCP servers

Related MCP Connectors

  • Read-only fantasy analysis for ESPN, Yahoo, and Sleeper leagues via MCP

  • WHOOP recovery, strain, sleep and workouts in Claude via official WHOOP OAuth. Free, open source.

  • Connect Claude to Fathom meeting recordings, transcripts, and summaries

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sdotj/sleeper-bot'

If you have feedback or need assistance with the MCP directory API, please join our Discord server