Get the FREE Ultimate OpenClaw Setup Guide →

sleeper

MCP server from sam-maryland/sleeper-mcp-server

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio sam-maryland-sleeper-mcp-server node server.js \
  --env LOG_LEVEL="info" \
  --env API_BASE_URL="Sleeper API base url if overridden" \
  --env LEAGUE_CONFIG_PATH="configs/league_settings.json"

How to use

The Sleeper MCP Server connects AI agents to Sleeper Fantasy Football data, enabling natural language querying over league standings, members, weekly matchups, and custom tiebreakers. You can ask questions like 'Show me the standings for my league', 'Who are the users in my league?', or 'What were the matchups for week 5?' and the server will retrieve data from Sleeper via its API and apply any league-specific custom rules defined in your league_settings.json. It supports head-to-head tiebreakers, per-league rule sets, and works with any MCP-compatible AI agent (Claude, ChatGPT, etc.). This makes it easy to analyze multiple leagues, compare standings under different rules, and get actionable insights without manually querying APIs.

How to install

Prerequisites:

  • Node.js (LTS) and npm installed on your system
  • Git (optional but recommended)
  • Access to Sleeper API (via internet)
  1. Clone the repository:

    git clone https://github.com/your-org/sleeper-mcp-server.git cd sleeper-mcp-server

  2. Install dependencies:

    npm install

  3. Configure your league settings:

    • Edit configs/league_settings.json to add your league(s) and custom standings rules.

    • Example structure is provided in the repository's README:

      { "leagues": { "1234567890123456789": { "name": "My Fantasy League", "description": "League with custom head-to-head tiebreakers", "custom_standings": { "enabled": true, "instructions": "When teams have the same wins, use head-to-head record first, then points for, then points against", "tiebreak_order": ["wins", "head_to_head", "points_for", "points_against"], "notes": "This league uses custom tiebreakers not supported by Sleeper natively" } } } }

  4. Run the server:

    node server.js

  5. (Optional) Run in a controlled environment (Docker/uvx) if you prefer containerized or Python-based runtimes and adjust the mcp_config accordingly. See the README for environment variable notes and integration steps.

Additional notes

Tips and common considerations:

  • Ensure the configs/league_settings.json file is valid JSON and matches your Sleeper league IDs.
  • The server relies on Sleeper API access; if you encounter rate limits, consider staggering queries or caching results where appropriate.
  • The mcp_config section in this documentation uses a Node.js runtime with server.js as the entry point; if your deployment uses a different path or a containerized setup, adjust the command and args accordingly.
  • You can set environment variables like LEAGUE_CONFIG_PATH and LOG_LEVEL to customize behavior and logging.
  • If you plan to run multiple leagues with different rules, include them in the leagues map within configs/league_settings.json and reference by their Sleeper league IDs.

Related MCP Servers

Sponsor this space

Reach thousands of developers