A Claude Code skill that queries the public FIFA FDCP API to retrieve national team data — current world standing, points, position movement, historical trends, and recent match results.
No API key or authentication required.
| Query type | What you get |
|---|---|
| Current standing | Position, points, movement vs. previous period, confederation |
| Historical trend | All-time average, best/worst year, per-month breakdown |
| Recent matches | Score, opponent, competition, venue, date — sorted newest first |
| Full table | All countries for any published standing date |
claude skill add CuberL/fifa-data-skillAsk Claude about any national team using a country name or FIFA alpha-3 code:
What's France's current standing?
Show me Brazil's last 5 matches.
How has China's position changed over the years?
Who is ranked #1 in women's football right now?
Give me the full top 10 men's table.
The skill activates when your question mentions:
- A country's FIFA standing / position / points
- Position movement or trend
- Recent match results or match history
- Men's or Women's FIFA table
Pass any ISO 3166-1 alpha-3 country code. FIFA uses a few non-standard codes — common ones are listed below.
| Country | Code | Country | Code | |
|---|---|---|---|---|
| Argentina | ARG |
Japan | JPN |
|
| Brazil | BRA |
South Korea | KOR |
|
| China PR | CHN |
Mexico | MEX |
|
| England | ENG |
Portugal | POR |
|
| France | FRA |
Spain | ESP |
|
| Germany | GER |
USA | USA |
FIFA uses
ENGfor England (notGBR) andGERfor Germany. If a code returns empty results, try querying/rankings/byCountry/{code}directly — an emptyResultsarray means the code is invalid.
All requests hit the public FIFA FDCP API at https://api.fifa.com/api/v3. No auth required.
| Endpoint | Purpose |
|---|---|
GET /rankings/byCountry/{code}?gender={1|2} |
Current standing for a country |
GET /rankings/byCountry/{code}/aggregated?gender={1|2} |
Historical aggregated stats |
GET /calendar/matches?idTeam={id}&from={date}&count={n} |
Match results |
GET /rankingschedules/all?type=0&gender={1|2} |
List all published standing dates |
GET /rankingsbyschedule?rankingScheduleId={id} |
Full table for a given date |
Gender values: 1 = Men, 2 = Women
Standing response (Results[0]):
| Field | Description |
|---|---|
Rank |
Current position |
PrevRank |
Position in previous period |
RankingMovement |
Change (positive = moved up) |
DecimalTotalPoints |
Precise points value |
PubDate |
Publication date of this standing |
IdTeam |
Internal FIFA team ID (required for match queries) |
ConfederationName |
e.g. UEFA, AFC, CONMEBOL |
Match response (Results[]):
| Field | Description |
|---|---|
Date |
Match datetime (UTC) |
CompetitionName[0].Description |
Competition name |
Home.TeamName[0].Description |
Home team |
Away.TeamName[0].Description |
Away team |
HomeTeamScore / AwayTeamScore |
Final score |
Winner |
IdTeam of winner (null if draw) |
Stadium.Name[0].Description |
Venue |
# Current Men's standing for France
curl -s "https://api.fifa.com/api/v3/rankings/byCountry/FRA?gender=1&language=en" | jq '.Results[0]'
# Women's standing for USA
curl -s "https://api.fifa.com/api/v3/rankings/byCountry/USA?gender=2&language=en" | jq '.Results[0]'
# Historical stats for Brazil
curl -s "https://api.fifa.com/api/v3/rankings/byCountry/BRA/aggregated?gender=1&language=en" | jq .
# Last 5 matches for Argentina (IdTeam must be fetched first)
TEAM_ID=$(curl -s "https://api.fifa.com/api/v3/rankings/byCountry/ARG?gender=1&language=en" | jq -r '.Results[0].IdTeam')
curl -s "https://api.fifa.com/api/v3/calendar/matches?idTeam=${TEAM_ID}&language=en&count=20&from=2024-01-01T00:00:00Z" \
| jq '[.Results | sort_by(.Date) | reverse | .[0:5][] | {date: .Date[:10], home: .Home.TeamName[0].Description, score: "\(.HomeTeamScore)-\(.AwayTeamScore)", away: .Away.TeamName[0].Description}]'MIT