Skip to main content
Glama
mgphp
by mgphp

fpl-mcp

An MCP server for Fantasy Premier League. Reads use FPL's public API; authenticated calls use a PingOne OIDC refresh token.

Tools

Tool

Description

current_gameweek

Current/next gameweek and deadline.

recommend_players

Rank players by form, value (points per £m), and upcoming fixture difficulty. Filters: position, max_cost, horizon, limit.

my_squad

Your current squad, bank, and free transfers. Needs auth.

make_transfer

Transfer a player out/in. Previews by default; set confirm=true to submit. Needs auth.

update_fpl_credentials

Replace the stored auth token from inside chat when it's expired or revoked — no restart needed.

Related MCP server: MCP-Soccerdata

Setup

npm install
npm run build
cp .env.example .env   # then fill in the values

Environment

Var

Purpose

FPL_ENTRY_ID

Your team ID (the number in fantasy.premierleague.com/entry/<ID>/). Needed for my_squad and make_transfer.

FPL_REFRESH_TOKEN

PingOne OIDC refresh token — see .env.example for how to grab it from DevTools. Needed for my_squad and make_transfer.

Read-only tools (current_gameweek, recommend_players) work without any env vars.

Auth notes

FPL retired the old users.premierleague.com cookie login in favor of PingOne OIDC (account.premierleague.com). The server:

  • Exchanges FPL_REFRESH_TOKEN for a short-lived access token and sends it as X-API-Authorization: Bearer <token>.

  • Refreshes proactively before expiry and on any 401/403.

  • PingOne rotates the refresh token on every exchange — the server rewrites FPL_REFRESH_TOKEN in .env each time so the new one survives a restart.

  • If the token is ever revoked or fully expired, call the update_fpl_credentials tool from chat with a freshly copied oidc.user value instead of editing .env by hand.

Run

node dist/server.js   # speaks MCP over stdio

Client config example

{
  "mcpServers": {
    "fpl": {
      "command": "node",
      "args": ["/absolute/path/to/fpl-mcp/dist/server.js"],
      "env": {
        "FPL_ENTRY_ID": "1234567",
        "FPL_REFRESH_TOKEN": "eyJ..."
      }
    }
  }
}
Install Server
A
license - permissive license
A
quality
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

  • A
    license
    A
    quality
    D
    maintenance
    A Model Context Protocol server that provides access to Fantasy Premier League data, allowing users to compare players, find team information, view gameweek data, and get FPL-related advice through Claude for Desktop and other MCP-compatible clients.
    Last updated
    16
    72
    MIT
  • A
    license
    -
    quality
    F
    maintenance
    An open-source MCP server that connects to the SoccerDataAPI to deliver up-to-date football match information via natural language interactions.
    Last updated
    38
    MIT

View all related MCP servers

Related MCP Connectors

  • A MCP server built for developers enabling Git based project management with project and personal…

  • An MCP server that let you interact with Cycloid.io Internal Development Portal and Platform

  • A basic MCP server to operate on the Postman API.

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/mgphp/fpl-mcp'

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