FPL Copilot
Fantasy Premier League expected points, team ratings, captaincy and mini-league win chances.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"fpl-copilot": {
"url": "https://api.fplcopilot.com/mcp"
}
}
}Puntos de conexión remotos
https://api.fplcopilot.com/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (21)
🟢rate_my_team(team_id, players, captain)
Use this when a Fantasy Premier League (FPL, fantasy football) manager wants their team rated or reviewed, or shares their team ID or FPL link without saying more. Scores the squad 0-100 against the best possible squad over the next 5 gameweeks and lists the biggest fixes, naming the players; pass their team ID or FPL link, or the player names read from a screenshot of their team.
Esquema de entrada
{
"type": "object",
"properties": {
"team_id": {
"anyOf": [
{
"type": "integer"
},
{
"maxLength": 200,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "The manager's FPL team ID (entry ID), or any FPL link containing /entry/<id>/. Leave empty if unknown.",
"title": "Team Id"
},
"players": {
"anyOf": [
{
"items": {
"maxLength": 60,
"minLength": 1,
"type": "string"
},
"maxItems": 20,
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"description": "11-15 FPL player names (e.g. read from a screenshot of their team), used when there is no team ID. Add the club to disambiguate, e.g. 'Palmer CHE'.",
"title": "Players"
},
"captain": {
"anyOf": [
{
"maxLength": 60,
"minLength": 1,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Captain's name, if known",
"title": "Captain"
}
},
"title": "rate_my_teamArguments"
}🟢get_my_team(team_id, players)
Use this for start, bench and captain questions about an FPL manager's own squad: each player's FPL Copilot expected points for the next gameweek with fixtures, and the best XI and captain. It shows the squad and does not score it. Needs their team ID or FPL link, or player names from a screenshot.
Esquema de entrada
{
"type": "object",
"properties": {
"team_id": {
"anyOf": [
{
"type": "integer"
},
{
"maxLength": 200,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "The manager's FPL team ID (entry ID), or any FPL link containing /entry/<id>/. Leave empty if unknown.",
"title": "Team Id"
},
"players": {
"anyOf": [
{
"items": {
"maxLength": 60,
"minLength": 1,
"type": "string"
},
"maxItems": 20,
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"description": "11-15 FPL player names (e.g. read from a screenshot of their team), used when there is no team ID. Add the club to disambiguate, e.g. 'Palmer CHE'.",
"title": "Players"
}
},
"title": "get_my_teamArguments"
}🟢get_captain_picks(team_id, scope)
Use this when someone asks who to captain (or Triple Captain) in Fantasy Premier League (fantasy football) this gameweek. Call it even without their team: it then lists the best captain options in the game. With a team ID (or their team from an earlier chat) it ranks their own players; scope "all" ranks the game.
Esquema de entrada
{
"type": "object",
"properties": {
"team_id": {
"anyOf": [
{
"type": "integer"
},
{
"maxLength": 200,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "The manager's FPL team ID (entry ID), or any FPL link containing /entry/<id>/. Leave empty if unknown.",
"title": "Team Id"
},
"scope": {
"anyOf": [
{
"maxLength": 24,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "all: the best captains in the game, for general asks; squad: from the user's own team",
"title": "Scope"
}
},
"title": "get_captain_picksArguments"
}🟢find_players(position, max_price, min_price, team, max_ownership, ...)
Use this to find the best Fantasy Premier League (fantasy football) players to pick or buy, by FPL Copilot expected points (xPts, also called predicted or projected points), filtered by position, price, club or ownership, and sorted by points, value per £m, or as low-owned differentials. Classic FPL, not FPL Draft.
Esquema de entrada
{
"type": "object",
"properties": {
"position": {
"anyOf": [
{
"maxLength": 24,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Position: GK, DEF, MID or FWD",
"title": "Position"
},
"max_price": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "Max price in £m, e.g. 8.0",
"title": "Max Price"
},
"min_price": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "Min price in £m",
"title": "Min Price"
},
"team": {
"anyOf": [
{
"maxLength": 30,
"minLength": 1,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Club, e.g. ARS or Arsenal",
"title": "Team"
},
"max_ownership": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "Max ownership %, e.g. 10 for differentials",
"title": "Max Ownership"
},
"sort": {
"default": "xpts",
"description": "xpts (default), value (xPts per £m) or differential (low-owned)",
"maxLength": 24,
"title": "Sort",
"type": "string"
},
"horizon": {
"default": 5,
"description": "How many gameweeks ahead to count (1-8).",
"title": "Horizon",
"type": "integer"
},
"limit": {
"default": 10,
"description": "How many players (1-15)",
"title": "Limit",
"type": "integer"
}
},
"title": "find_playersArguments"
}🟢get_player(names, horizon)
Use this for one to five FPL players, e.g. whether to buy, sell or start them: expected points for each coming gameweek with fixtures, injury news, price and price-change progress, ownership, xG/xA and his chance of being the main penalty taker.
Esquema de entrada
{
"type": "object",
"properties": {
"names": {
"description": "1-5 player names, e.g. ['Haaland']",
"items": {
"maxLength": 60,
"minLength": 1,
"type": "string"
},
"maxItems": 15,
"title": "Names",
"type": "array"
},
"horizon": {
"default": 5,
"description": "How many gameweeks ahead to count (1-8).",
"title": "Horizon",
"type": "integer"
}
},
"required": [
"names"
],
"title": "get_playerArguments"
}🟢compare_players(names, horizon)
Use this when choosing between two or three FPL players (e.g. 'Saka or Palmer?', one transfer for another, or whether a -4 hit is worth it): expected points over the coming gameweeks, form, price and ownership side by side.
Esquema de entrada
{
"type": "object",
"properties": {
"names": {
"description": "2-3 player names",
"items": {
"maxLength": 60,
"minLength": 1,
"type": "string"
},
"maxItems": 10,
"title": "Names",
"type": "array"
},
"horizon": {
"default": 5,
"description": "How many gameweeks ahead to count (1-8).",
"title": "Horizon",
"type": "integer"
}
},
"required": [
"names"
],
"title": "compare_playersArguments"
}🟢get_fixture_ticker(teams, gw_from, gw_to)
Use this for Fantasy Premier League fixture difficulty (FDR) and which teams have the easiest or hardest fixtures: each club's coming fixtures and their average difficulty, easiest runs first.
Esquema de entrada
{
"type": "object",
"properties": {
"teams": {
"anyOf": [
{
"items": {
"maxLength": 30,
"minLength": 1,
"type": "string"
},
"maxItems": 40,
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"description": "Clubs to include (default: all 20)",
"title": "Teams"
},
"gw_from": {
"anyOf": [
{
"type": "integer"
},
{
"maxLength": 12,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "First gameweek. Leave empty for the next gameweek; set only if the user names one",
"title": "Gw From"
},
"gw_to": {
"anyOf": [
{
"type": "integer"
},
{
"maxLength": 12,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Last gameweek. Leave empty for a 6-gameweek view (max 8 ahead)",
"title": "Gw To"
}
},
"title": "get_fixture_tickerArguments"
}🟢get_price_changes(view, names)
Use this for FPL price rises and falls: players likely to change price tonight, or changes already made this gameweek.
Esquema de entrada
{
"type": "object",
"properties": {
"view": {
"default": "tonight",
"description": "tonight (default): likely changes tonight; recent: changes made this gameweek",
"maxLength": 24,
"title": "View",
"type": "string"
},
"names": {
"anyOf": [
{
"items": {
"maxLength": 60,
"minLength": 1,
"type": "string"
},
"maxItems": 20,
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"description": "Specific players to check",
"title": "Names"
}
},
"title": "get_price_changesArguments"
}🟢get_penalty_takers(teams)
Use this to find who takes penalties, corners and free kicks for Premier League clubs in FPL, with each penalty taker's chance of being his club's main taker.
Esquema de entrada
{
"type": "object",
"properties": {
"teams": {
"anyOf": [
{
"items": {
"maxLength": 30,
"minLength": 1,
"type": "string"
},
"maxItems": 40,
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"description": "Clubs, e.g. ['BHA'] (default: all 20)",
"title": "Teams"
}
},
"title": "get_penalty_takersArguments"
}🟢get_best_chip_squad(chip, gw)
Use this when someone wants the best FPL Wildcard or Free Hit squad for any gameweek, or the best FPL team right now, built by FPL Copilot's optimiser within £100m and FPL squad rules. Not for a Bench Boost team or when to play a chip: the result links FPL Copilot's Chip Strategies for that.
Esquema de entrada
{
"type": "object",
"properties": {
"chip": {
"default": "wildcard",
"description": "wildcard or free_hit (bench_boost and triple_captain, played on the manager's own team, return where to plan them)",
"maxLength": 24,
"title": "Chip",
"type": "string"
},
"gw": {
"anyOf": [
{
"type": "integer"
},
{
"maxLength": 12,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Gameweek (default: next)",
"title": "Gw"
}
},
"title": "get_best_chip_squadArguments"
}🟢get_mini_league(team_id, league_id)
Use this for an FPL mini-league or a manager's rivals in it: standings, the gap to the leader, and rivals' captains and differential picks. Without a league ID it lists the manager's leagues to choose from.
Esquema de entrada
{
"type": "object",
"properties": {
"team_id": {
"anyOf": [
{
"type": "integer"
},
{
"maxLength": 200,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "The manager's FPL team ID (entry ID), or any FPL link containing /entry/<id>/. Leave empty if unknown.",
"title": "Team Id"
},
"league_id": {
"anyOf": [
{
"type": "integer"
},
{
"maxLength": 200,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Mini-league ID, or the FPL league standings link. Leave empty to list the manager's leagues.",
"title": "League Id"
}
},
"title": "get_mini_leagueArguments"
}🟢get_mini_league_odds(league_id, team_id)
Use this when an FPL manager asks their chances (or odds) of winning their mini-league: each manager's win and top-3 probability from 5,000 simulations of the rest of the season.
Esquema de entrada
{
"type": "object",
"properties": {
"league_id": {
"anyOf": [
{
"type": "integer"
},
{
"maxLength": 200,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Mini-league ID, or the FPL league standings link. Leave empty to list the manager's leagues.",
"title": "League Id"
},
"team_id": {
"anyOf": [
{
"type": "integer"
},
{
"maxLength": 200,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "The manager's FPL team ID (entry ID), or any FPL link containing /entry/<id>/. Leave empty if unknown.",
"title": "Team Id"
}
},
"title": "get_mini_league_oddsArguments"
}🟢get_gameweek_review(team_id, gw)
Use this to review an FPL manager's gameweek: points vs the average, captain result, bench points and transfers, plus how lucky their season has been against FPL Copilot's expected points.
Esquema de entrada
{
"type": "object",
"properties": {
"team_id": {
"anyOf": [
{
"type": "integer"
},
{
"maxLength": 200,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "The manager's FPL team ID (entry ID), or any FPL link containing /entry/<id>/. Leave empty if unknown.",
"title": "Team Id"
},
"gw": {
"anyOf": [
{
"type": "integer"
},
{
"maxLength": 12,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Gameweek (default: the last finished)",
"title": "Gw"
}
},
"title": "get_gameweek_reviewArguments"
}🟢get_deadline
Use this for the next Fantasy Premier League deadline time and gameweek.
Esquema de entrada
{
"type": "object",
"properties": {},
"title": "get_deadlineArguments"
}🟢get_predicted_lineups(teams)
Use this for predicted Premier League starting XIs and team news for the next FPL gameweek (who starts, who is injured or rotated), from FPL Copilot's expected minutes.
Esquema de entrada
{
"type": "object",
"properties": {
"teams": {
"anyOf": [
{
"items": {
"maxLength": 30,
"minLength": 1,
"type": "string"
},
"maxItems": 40,
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"description": "Clubs, e.g. ['ARS', 'Chelsea'] (default: all 20)",
"title": "Teams"
}
},
"title": "get_predicted_lineupsArguments"
}🟢search_guides(query, gw)
Use this for Fantasy Premier League rules and how-to questions (scoring, free transfers, chips and when to play them, DefCon, FDR) and FPL Copilot's guides: gameweek tips, chip guides, penalty takers, fixtures. FPL's rules change each season (free transfers now roll over up to 5), so use these, not memory.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"anyOf": [
{
"maxLength": 100,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "What to look for, e.g. 'bench boost' or 'GW7 tips'",
"title": "Query"
},
"gw": {
"anyOf": [
{
"type": "integer"
},
{
"maxLength": 12,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Prefer guides for this gameweek",
"title": "Gw"
}
},
"title": "search_guidesArguments"
}🟢read_guide(slug)
Use this to read one FPL Copilot Fantasy Premier League guide in full, by its slug or its fplcopilot.com/blog/ link.
Esquema de entrada
{
"type": "object",
"properties": {
"slug": {
"description": "The guide's slug, or its fplcopilot.com/blog/ link",
"maxLength": 200,
"title": "Slug",
"type": "string"
}
},
"required": [
"slug"
],
"title": "read_guideArguments"
}🟡create_share_link(component, data, token)
Creates a public fplcopilot.com page for an FPL Copilot card so it can be shared.
Esquema de entrada
{
"type": "object",
"properties": {
"component": {
"description": "The card's component, e.g. rating_card",
"maxLength": 40,
"title": "Component",
"type": "string"
},
"data": {
"additionalProperties": true,
"description": "The card's data object",
"title": "Data",
"type": "object"
},
"token": {
"anyOf": [
{
"maxLength": 64,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "The card's share token (from the result's _meta)",
"title": "Token"
}
},
"required": [
"component",
"data"
],
"title": "create_share_linkArguments"
}🟢get_player_breakdown(player_id)
The FPL Copilot player card's data for one player (for the card's own view).
Esquema de entrada
{
"type": "object",
"properties": {
"player_id": {
"description": "The FPL player (element) id",
"maximum": 5000,
"minimum": 1,
"title": "Player Id",
"type": "integer"
}
},
"required": [
"player_id"
],
"title": "get_player_breakdownArguments"
}🟢get_player_breakdowns(player_ids)
The FPL Copilot player cards' data for the players on a card (for the card's own view).
Esquema de entrada
{
"type": "object",
"properties": {
"player_ids": {
"description": "FPL player (element) ids",
"items": {
"maximum": 5000,
"minimum": 1,
"type": "integer"
},
"maxItems": 45,
"minItems": 1,
"title": "Player Ids",
"type": "array"
}
},
"required": [
"player_ids"
],
"title": "get_player_breakdownsArguments"
}🟢get_manager_squad(entry_id, gw)
An FPL mini-league rival's squad for the league card's own view.
Esquema de entrada
{
"type": "object",
"properties": {
"entry_id": {
"description": "The rival's FPL team (entry) id",
"maximum": 99999999,
"minimum": 1,
"title": "Entry Id",
"type": "integer"
},
"gw": {
"anyOf": [
{
"maximum": 38,
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "A played gameweek (default: the last)",
"title": "Gw"
}
},
"required": [
"entry_id"
],
"title": "get_manager_squadArguments"
}Comunidad
Evidencia