ESPN integration reference

A hosted MCP server for ESPN Fantasy

League Loom is a free, read-only ESPN fantasy MCP server for football and four other sports, so Claude, ChatGPT and other MCP clients can read your ESPN leagues.

Add https://leagueloom.com/mcp on a computer, in a client that supports Streamable HTTP and OAuth; Claude's phone app can then use it. This reference covers authorization and your first retrieval.

Free connector · ESPN, Sleeper & Fantrax · Works with compatible AI tools

Looking for step-by-step setup in ChatGPT or Claude? See Connect ESPN Fantasy to ChatGPT and Claude.

Looking for Sleeper or Fantrax over MCP? See Fantasy MCP servers compared.

Last updated

See it with a real team

Your teams. A useful answer.

A recorded check-in with real teams.

AI Assistant
Claude, ChatGPT & more
League Loom
Gagging on CauliFlowers · ESPN
Where is my injury risk heading into Week 4?
Jefferson is the starter to watch. Flowers is active and back in your lineup.
QUESTIONABLEJustin Jefferson(In your flex slot)ESPN
OUTTravis Etienne Jr.(Already in IR)ESPN

Charbonnet is also out in IR. Focus on Jefferson's recovery and practice reports. Metcalf and Dobbins are on your bench and their latest reports list them active; compare expected usage if you need an alternative.

Plan that alternative for the next eligible lineup period if Jefferson remains limited. Confirm ESPN's lineup deadline and player eligibility before changing your flex spot.

Ask about your leagues…

Before you start

Check your client and league access

Remote MCP and OAuth

A client must support the endpoint transport and complete OAuth. Merely accepting a URL is not proof that authorization or tool calls work.

Public or private ESPN

Public leagues use their league URL. Private leagues also need your own espn_s2 and SWID from a signed-in browser. Never paste these into a chat prompt.

Data varies by league

League Loom supports ESPN NFL, NBA, MLB, NHL and WNBA. Missing or offseason roster data must remain unavailable rather than becoming a made-up empty team.

Get connected

From your league to your AI tool

1

Add the connector

In Claude or any MCP tool, add a custom connector; in ChatGPT on the web, turn on developer mode and use the + button on the Plugins page. Give it a name and paste the League Loom URL as the server address.

2

Choose your leagues

Load your leagues in the setup wizard. Select a personal team for team-specific help, or leave it unselected for league overviews. No API keys.

3

Just ask

Ask about your roster, waivers, matchups, and more, in plain language, across every league.

Remote connector URL

https://leagueloom.com/mcp

Add this URL in your AI tool, then follow the guided setup.

Open setup wizard →

Worked example

Verify one complete retrieval

A reproducible integration checklist, not a fabricated live response.

  1. Discover and authorize

    Add https://leagueloom.com/mcp in your client. Complete the OAuth setup, select a league and team, and return to the assistant.

  2. Read the configured profile

    Ask for your connected setup. The fantasy_get_my_setup result should identify the expected provider and league before the assistant asks for a roster.

  3. Read one team

    Ask for your ESPN team. Check the reported league, roster coverage and retrieval time. A successful handshake alone does not verify provider access.

  4. Resolve the correct failure

    An OAuth failure occurs before provider data is read. An ESPN authorization error can mean expired cookies; refresh them through setup. Missing roster data is a coverage issue, not evidence of an empty team.

More about this connection

MCP transport, OAuth authorization and ESPN data access are separate checks. League Loom is hosted, so you do not need to deploy a server or obtain an ESPN API key.

Public ESPN leagues use their league URL; private leagues require browser credentials entered in setup and sealed into your encrypted connection. The client discovers the tool list after connecting, and current tools retrieve or analyze data without submitting moves.

Keep secrets out of query strings, logs and prompts. If authorization succeeds but a provider request fails, use the reported failure to distinguish stale ESPN credentials from unavailable league data.

Before you connect

Questions, answered

Do I need an ESPN API key?

No. ESPN does not issue fantasy API keys, and League Loom does not need one. It reads the same fantasy endpoints the ESPN website and app use. Public leagues need nothing at all; private leagues use the espn_s2 and SWID cookies from your own signed-in browser session, pasted once during setup.

Is League Loom an official ESPN product?

No. League Loom is an independent MCP server that reads ESPN fantasy data through the endpoints ESPN's own site uses. Those endpoints are unofficial and undocumented, which is why the cookies for a private league can occasionally need refreshing.

Which AI apps can use it?

Compatible clients must support hosted Streamable HTTP and League Loom's OAuth flow. Use the maintained Claude and ChatGPT guides for current setup steps and account requirements. A transport connection alone does not verify league access.

Can it change my ESPN lineup or put in a waiver claim?

All current tools retrieve or analyze data, and no write-action tools are registered today. The AI can tell you who to start or which claim to make, and you make the move in the ESPN app yourself.

Which sports does it cover on ESPN?

League Loom's ESPN support covers NFL, NBA, MLB, NHL, and WNBA leagues. The same connector also reads Sleeper and Fantrax leagues, so one connection can cover every team you manage.

What exactly can it read from an ESPN league?

Rosters with lineup slots, standings, matchups with weekly scoring and ESPN's projections, the schedule, transactions, draft results, available players, player data, and league settings such as scoring and roster rules.

What happens when my espn_s2 or SWID cookie expires?

ESPN's private-league cookies can expire or change if you log out or ESPN resets your session. When that happens the connection to that league stops working until you paste fresh espn_s2 and SWID values at setup, which takes about a minute. Public leagues are unaffected.

Before you connect a league, read how League Loom is built, what the privacy policy says is stored, the terms of service and the full FAQ, or check the press kit with key facts and who builds it.