Skip to main content
Glama
fpl-context-mcp

fpl-context-mcp

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
DRY_RUNNoSet to true/1/yes to run without writing to PostgreSQL.false
DATABASE_URLYesRead-only PostgreSQL connection string for the query_historical_stats tool. Example: postgresql://fpl_readonly:password@localhost:5432/fpl
MCP_AUTH_TOKENNoHTTP transport only (--transport http): if set, /mcp requests must include Authorization: Bearer <token>.
DATABASE_ETL_URLNoPostgreSQL read/write connection string used by the fpl-context-ingest-match job. Falls back to DATABASE_URL if not set.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_live_availabilityA

Current FPL injury, suspension and availability flags, fetched live from the FPL API. Call this before recommending, picking or captaining any player, so a newly flagged or suspended player isn't missed. With no arguments it lists every player who currently has a flag, newest news first. Pass player names to check specific players (returned even when fully available), and/or statuses to filter.

Status codes: a available, d doubtful, i injured, s suspended, u unavailable (left club / on loan), n not in squad. chance_of_playing is FPL's estimate for the next round.

get_current_gameweekA

The current and next FPL gameweek and the transfer deadline, live from the FPL API. Use it to anchor 'this week' / 'next week' questions and to say how long a manager has left to make transfers.

get_fixturesA

FPL fixtures with difficulty ratings (FDR, 1 easiest to 5 hardest), live from the FPL API. With no arguments lists the next 5 gameweeks for every team. Pass team to see one team's run from its own point of view, gameweek for a single round, or gameweeks_ahead for a longer window.

search_playersA

Find and rank current-season FPL players, live from the FPL API: by name, team, position and maximum price, sorted by a chosen stat. Returns price, total points, form, ownership, FPL's expected points for the next gameweek (ep_next) and availability status. Use it for 'best midfielders under £8m', 'how is Palmer doing', or to find a replacement.

get_manager_squadA

A manager's FPL squad for a gameweek, with captain, bench, bank, squad value, transfers and the chips they have used, looked up by their FPL team ID (live from FPL's public API, no login needed). The team ID is the number in the URL of the manager's FPL Points page. Use it as the starting point for transfer, captain and chip advice on their actual team.

get_fixture_runA

How easy or hard a team's next few fixtures are, live from the FPL API: average FDR (1 easiest, 5 hardest), home/away split, and blank or double gameweeks. Pass team for its fixture-by-fixture run; omit it to rank all 20 teams, easiest run first. Prefer this over get_fixtures when judging transfers, captaincy or chip timing.

get_xptsA

Rank players by estimated expected points (xPts) for a gameweek, live from the FPL API. A transparent baseline built from season xG/xA/clean-sheet/save/bonus rates, expected minutes, availability and fixture difficulty, shown beside FPL's own ep_next. Filter by position, team and max price. Good for captain shortlists and finding transfer targets; it is noisy early in the season and ignores rotation, so cross-check availability with get_live_availability.

get_player_historyA

A player's match-by-match record this season (minutes, goals, assists, clean sheets, bonus, xG/xA, points), optionally only against one opponent or the last N matches, plus their season totals for past seasons. Live from the FPL API. Use it for 'how has Saka done against Spurs this season' or 'is his form real'. FPL provides match-level data for the current season only; past seasons are totals, so opponent splits for earlier seasons do not exist.

get_gameweek_statsA

Every player's stats for one gameweek, ranked (default: the latest gameweek with results, sorted by points). Live from the FPL API. Use it for 'top scorers last week', 'which defenders kept clean sheets in GW9' or 'who got the most bonus'. Filter by position and team.

Prompts

Interactive templates invoked by user choice

NameDescription
captain_pickRecommend a captain, vice-captain and differential for a gameweek.
transfer_planPlan one or two transfers using fixture runs, expected points and availability.
chip_timingDecide when to play Wildcard, Free Hit, Bench Boost and Triple Captain.

Resources

Contextual data attached and managed by the client

NameDescription
glossaryStatus codes, FDR, positions and which tool answers what.

TDQS

A4.2/5.0

Scored across 9 tools

Disambiguation4/5

Most tools have clearly distinct targets: availability, gameweek timing, player search, squad lookup, player history, and gameweek stats. The main overlap is get_fixtures versus get_fixture_run, both covering fixture difficulty, and to a lesser degree search_players versus get_xpts for player ranking; the descriptions explicitly guide usage, but an agent could still hesitate.

Naming Consistency5/5

All tool names use consistent snake_case with a clear verb_noun pattern (get_current_gameweek, search_players, get_manager_squad, get_player_history). The single search_ prefix is still a standard verb and fits the same predictable convention.

Tool Count5/5

Nine tools is well-scoped for an FPL context server, covering distinct query areas without obvious filler. Each tool appears to earn its place in the analytical workflow.

Completeness4/5

The surface covers the core FPL context needs: availability, current gameweek, fixtures/FDR, player search, xPts, player history, gameweek stats, and manager squad. Minor gaps remain, such as mini-league standings or more explicit player/team detail views, but agents can work around most questions with the existing tools.

Maintenance

ActivityMaintained
ResponsivenessNo recent community issues