LiveScore MCP
Football live scores, fixtures, standings, top scorers, matches, teams and players for 1000+ leagues
Should I use this
Quality & Safety
Findings (1)
- LOWin get_top_scorers
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"livescore-mcp": {
"url": "https://livescoremcp.com/mcp"
}
}
}Remote endpoints
https://livescoremcp.com/mcpstreamable-httphttps://livescoremcp.com/ssesseWhat it can do
Tool inventory
Tools (16)
π’fetch(id, language, timezone)
Full details for an id from search: team:<id>, player:<id>, league:<league key> or match:<id>. Returns the title, the full text, and the football-mania.com url.
Input Schema
{
"type": "object",
"properties": {
"id": {
"description": "Typed id from search, e.g. team:9002, player:474972, league:EnglandPremierLeague, match:3868859",
"type": "string"
},
"language": {
"description": "Language for team, competition and country names, and for the football-mania.com links (en, es, de, fr, it, pt, pt-BR, nl, ar, ru, tr, id, β¦). Default: en",
"type": "string"
},
"timezone": {
"description": "IANA time zone for kick-off times and dates, e.g. Europe/London, America/New_York, Asia/Riyadh. Default: UTC",
"type": "string"
}
},
"required": [
"id"
]
}π’get_day_fixtures(country, date, format, language, league_key, ...)
All football matches on a date: results, live scores and kick-off times, grouped by competition (biggest competitions first). A busy day has 1000+ matches, so filter by country or league_key when you can.
Input Schema
{
"type": "object",
"properties": {
"country": {
"description": "Only this country, in English (e.g. England, Spain); Eurocups, International or WorldCup for international competitions",
"type": "string"
},
"date": {
"description": "YYYY-MM-DD, DD/MM/YYYY, today, tomorrow or yesterday. Default: today in timezone (UTC if none)",
"type": "string"
},
"format": {
"description": "text (default): compact summary with IDs and links. json: the raw data feed, minified and capped at 60,000 characters",
"enum": [
"text",
"json"
],
"type": "string"
},
"language": {
"description": "Language for team, competition and country names, and for the football-mania.com links (en, es, de, fr, it, pt, pt-BR, nl, ar, ru, tr, id, β¦). Default: en",
"type": "string"
},
"league_key": {
"description": "Only this competition (league key from search)",
"type": "string"
},
"limit": {
"description": "Maximum matches listed. Default: 150, maximum 500",
"type": "number"
},
"timezone": {
"description": "IANA time zone for kick-off times and dates, e.g. Europe/London, America/New_York, Asia/Riyadh. Default: UTC",
"type": "string"
},
"tzoffset": {
"description": "Day boundaries in this offset from UTC, in minutes (e.g. 120 for UTC+2). Default: from timezone, else 0",
"type": "number"
}
},
"required": []
}Output Schema
{
"type": "object",
"properties": {
"competitions": {
"description": "Distinct competitions represented",
"type": "integer"
},
"matches": {
"items": {
"additionalProperties": false,
"properties": {
"away": {
"description": "Away team name",
"type": "string"
},
"awayScore": {
"description": "Goals for the away team; absent before kick-off",
"type": [
"null",
"integer"
]
},
"competition": {
"description": "Competition name",
"type": "string"
},
"country": {
"description": "Country or confederation of the competition",
"type": "string"
},
"home": {
"description": "Home team name",
"type": "string"
},
"homeScore": {
"description": "Goals for the home team; absent before kick-off",
"type": [
"null",
"integer"
]
},
"id": {
"description": "Match id, usable with get_match",
"type": "string"
},
"kickoffUtc": {
"description": "Kick-off in RFC3339 UTC",
"type": "string"
},
"leagueKey": {
"description": "Competition key, usable with get_standings and get_league_fixtures",
"type": "string"
},
"minute": {
"description": "Minute played, only while live",
"type": "integer"
},
"state": {
"description": "One of scheduled, live, finished, other",
"type": "string"
},
"status": {
"description": "Raw status: a minute while live, FT/HT/Postp. otherwise, or the kick-off time",
"type": "string"
},
"url": {
"description": "Match page on football-mania.com",
"type": "string"
}
},
"required": [
"id",
"home",
"away",
"status",
"state"
],
"type": "object"
},
"type": [
"null",
"array"
]
},
"returned": {
"description": "Matches present in this response",
"type": "integer"
},
"timezone": {
"description": "Time zone the kick-off times were rendered in",
"type": "string"
},
"total": {
"description": "Matches found before any limit was applied",
"type": "integer"
}
},
"required": [
"total",
"returned",
"competitions",
"timezone",
"matches"
],
"additionalProperties": false
}π’get_fixtures(competition, format, language, limit, round, ...)
Same as get_league_fixtures; accepts the competition key with or without the _small suffix.
Input Schema
{
"type": "object",
"properties": {
"competition": {
"description": "League key (e.g. EurocupsUEFAChampionsLeague)",
"type": "string"
},
"format": {
"description": "text (default): compact summary with IDs and links. json: the raw data feed, minified and capped at 60,000 characters",
"enum": [
"text",
"json"
],
"type": "string"
},
"language": {
"description": "Language for team, competition and country names, and for the football-mania.com links (en, es, de, fr, it, pt, pt-BR, nl, ar, ru, tr, id, β¦). Default: en",
"type": "string"
},
"limit": {
"description": "Results and upcoming matches listed, each. Default: 10",
"type": "number"
},
"round": {
"description": "Only this round/matchday number",
"type": "string"
},
"timezone": {
"description": "IANA time zone for kick-off times and dates, e.g. Europe/London, America/New_York, Asia/Riyadh. Default: UTC",
"type": "string"
}
},
"required": [
"competition"
]
}π’get_head_to_head(format, language, limit, team_a, team_b, ...)
All-time head-to-head record of two teams: wins, draws, goals, their recent meetings and the next scheduled meeting. Teams by ID or name.
Input Schema
{
"type": "object",
"properties": {
"format": {
"description": "text (default): compact summary with IDs and links. json: the raw data feed, minified and capped at 60,000 characters",
"enum": [
"text",
"json"
],
"type": "string"
},
"language": {
"description": "Language for team, competition and country names, and for the football-mania.com links (en, es, de, fr, it, pt, pt-BR, nl, ar, ru, tr, id, β¦). Default: en",
"type": "string"
},
"limit": {
"description": "Meetings listed. Default: 10",
"type": "number"
},
"team_a": {
"description": "First team: ID (e.g. 9002) or name (e.g. Arsenal)",
"type": "string"
},
"team_b": {
"description": "Second team: ID or name",
"type": "string"
},
"timezone": {
"description": "IANA time zone for kick-off times and dates, e.g. Europe/London, America/New_York, Asia/Riyadh. Default: UTC",
"type": "string"
}
},
"required": [
"team_a",
"team_b"
]
}π’get_league_fixtures(format, language, league_key, limit, round, ...)
Fixtures and results of one competition (league or cup): latest results, matches in play and upcoming matches of the current season, or one round. For the table use get_standings.
Input Schema
{
"type": "object",
"properties": {
"format": {
"description": "text (default): compact summary with IDs and links. json: the raw data feed, minified and capped at 60,000 characters",
"enum": [
"text",
"json"
],
"type": "string"
},
"language": {
"description": "Language for team, competition and country names, and for the football-mania.com links (en, es, de, fr, it, pt, pt-BR, nl, ar, ru, tr, id, β¦). Default: en",
"type": "string"
},
"league_key": {
"description": "League key from search (e.g. EnglandPremierLeague, SpainPrimeraDivision, EurocupsUEFAChampionsLeague), or the competition name",
"type": "string"
},
"limit": {
"description": "Results and upcoming matches listed, each. Default: 10",
"type": "number"
},
"round": {
"description": "Only this round/matchday number (e.g. 7)",
"type": "string"
},
"timezone": {
"description": "IANA time zone for kick-off times and dates, e.g. Europe/London, America/New_York, Asia/Riyadh. Default: UTC",
"type": "string"
}
},
"required": [
"league_key"
]
}π’get_live_scores(country, format, language, league_key, timezone)
Football matches being played right now, worldwide, with score and minute, grouped by competition (biggest competitions first). Optional filters by country or league key.
Input Schema
{
"type": "object",
"properties": {
"country": {
"description": "Only this country, in English (e.g. England, Spain, Brazil); international club and national-team competitions use Eurocups, International or WorldCup",
"type": "string"
},
"format": {
"description": "text (default): compact summary with IDs and links. json: the raw data feed, minified and capped at 60,000 characters",
"enum": [
"text",
"json"
],
"type": "string"
},
"language": {
"description": "Language for team, competition and country names, and for the football-mania.com links (en, es, de, fr, it, pt, pt-BR, nl, ar, ru, tr, id, β¦). Default: en",
"type": "string"
},
"league_key": {
"description": "Only this competition (league key from search, e.g. EnglandPremierLeague)",
"type": "string"
},
"timezone": {
"description": "IANA time zone for kick-off times and dates, e.g. Europe/London, America/New_York, Asia/Riyadh. Default: UTC",
"type": "string"
}
},
"required": []
}Output Schema
{
"type": "object",
"properties": {
"competitions": {
"description": "Distinct competitions represented",
"type": "integer"
},
"matches": {
"items": {
"additionalProperties": false,
"properties": {
"away": {
"description": "Away team name",
"type": "string"
},
"awayScore": {
"description": "Goals for the away team; absent before kick-off",
"type": [
"null",
"integer"
]
},
"competition": {
"description": "Competition name",
"type": "string"
},
"country": {
"description": "Country or confederation of the competition",
"type": "string"
},
"home": {
"description": "Home team name",
"type": "string"
},
"homeScore": {
"description": "Goals for the home team; absent before kick-off",
"type": [
"null",
"integer"
]
},
"id": {
"description": "Match id, usable with get_match",
"type": "string"
},
"kickoffUtc": {
"description": "Kick-off in RFC3339 UTC",
"type": "string"
},
"leagueKey": {
"description": "Competition key, usable with get_standings and get_league_fixtures",
"type": "string"
},
"minute": {
"description": "Minute played, only while live",
"type": "integer"
},
"state": {
"description": "One of scheduled, live, finished, other",
"type": "string"
},
"status": {
"description": "Raw status: a minute while live, FT/HT/Postp. otherwise, or the kick-off time",
"type": "string"
},
"url": {
"description": "Match page on football-mania.com",
"type": "string"
}
},
"required": [
"id",
"home",
"away",
"status",
"state"
],
"type": "object"
},
"type": [
"null",
"array"
]
},
"returned": {
"description": "Matches present in this response",
"type": "integer"
},
"timezone": {
"description": "Time zone the kick-off times were rendered in",
"type": "string"
},
"total": {
"description": "Matches found before any limit was applied",
"type": "integer"
}
},
"required": [
"total",
"returned",
"competitions",
"timezone",
"matches"
],
"additionalProperties": false
}π’get_match(format, h2h, id, language, timezone)
One match in detail: score, status, goals, cards and substitutions with minutes, line-ups, team statistics (possession, shots, cornersβ¦), injuries, form, standings of both teams, match report and head-to-head record.
Input Schema
{
"type": "object",
"properties": {
"format": {
"description": "text (default): compact summary with IDs and links. json: the raw data feed, minified and capped at 60,000 characters",
"enum": [
"text",
"json"
],
"type": "string"
},
"h2h": {
"description": "Include the head-to-head record. Default: true",
"type": "boolean"
},
"id": {
"description": "Match ID (from fixtures, live scores or search)",
"type": "string"
},
"language": {
"description": "Language for team, competition and country names, and for the football-mania.com links (en, es, de, fr, it, pt, pt-BR, nl, ar, ru, tr, id, β¦). Default: en",
"type": "string"
},
"timezone": {
"description": "IANA time zone for kick-off times and dates, e.g. Europe/London, America/New_York, Asia/Riyadh. Default: UTC",
"type": "string"
}
},
"required": [
"id"
]
}π’get_match_commentary(events_only, format, language, limit, match_id)
Minute-by-minute written commentary for a match, plus the goals, cards and substitutions in order. Useful while a match is in play, and afterwards to see how it unfolded.
Input Schema
{
"type": "object",
"properties": {
"events_only": {
"description": "true: only goals, cards and substitutions, skipping the running commentary. Default: false",
"type": "boolean"
},
"format": {
"description": "text (default): compact summary with IDs and links. json: the raw data feed, minified and capped at 60,000 characters",
"enum": [
"text",
"json"
],
"type": "string"
},
"language": {
"description": "Language for team, competition and country names, and for the football-mania.com links (en, es, de, fr, it, pt, pt-BR, nl, ar, ru, tr, id, β¦). Default: en",
"type": "string"
},
"limit": {
"description": "Maximum ticker entries, most recent last. Default: 60, maximum 300",
"type": "number"
},
"match_id": {
"description": "Match id from get_live_scores, get_day_fixtures or search",
"type": "string"
}
},
"required": [
"match_id"
]
}Output Schema
{
"type": "object",
"properties": {
"events": {
"description": "Goals, cards and substitutions in order",
"items": {
"additionalProperties": false,
"properties": {
"minute": {
"type": "string"
},
"player": {
"type": "string"
},
"team": {
"type": "string"
},
"text": {
"type": "string"
},
"type": {
"type": "string"
}
},
"type": "object"
},
"type": [
"null",
"array"
]
},
"lastUpdated": {
"type": "string"
},
"matchId": {
"type": "string"
},
"ticker": {
"description": "Minute-by-minute written commentary, when the competition has it",
"items": {
"additionalProperties": false,
"properties": {
"minute": {
"type": "string"
},
"player": {
"type": "string"
},
"team": {
"type": "string"
},
"text": {
"type": "string"
},
"type": {
"type": "string"
}
},
"type": "object"
},
"type": [
"null",
"array"
]
},
"url": {
"type": "string"
}
},
"required": [
"matchId"
],
"additionalProperties": false
}π’get_match_report(kind, language, match_id)
A written report of a finished match, or a preview of one still to come, with the story and the sources it drew on. Available for selected competitions rather than every match; call get_match first if you are not sure the match has one. Translated into es, de, fr, it, pt, nl, ru, ar and tr; other languages fall back to English.
Input Schema
{
"type": "object",
"properties": {
"kind": {
"description": "auto (default): report if one exists, otherwise preview. report: only a finished-match report. preview: only a pre-match preview",
"enum": [
"auto",
"report",
"preview"
],
"type": "string"
},
"language": {
"description": "Language for team, competition and country names, and for the football-mania.com links (en, es, de, fr, it, pt, pt-BR, nl, ar, ru, tr, id, β¦). Default: en",
"type": "string"
},
"match_id": {
"description": "Match id from get_live_scores, get_day_fixtures or search",
"type": "string"
}
},
"required": [
"match_id"
]
}Output Schema
{
"type": "object",
"properties": {
"away": {
"type": "string"
},
"competition": {
"type": "string"
},
"date": {
"type": "string"
},
"generatedAt": {
"type": "string"
},
"home": {
"type": "string"
},
"kind": {
"description": "report for a finished match, preview for one still to come",
"type": "string"
},
"language": {
"description": "Language the text was returned in",
"type": "string"
},
"leagueKey": {
"type": "string"
},
"matchId": {
"type": "string"
},
"score": {
"type": "string"
},
"sources": {
"description": "URLs the report drew on, when recorded",
"items": {
"type": "string"
},
"type": [
"null",
"array"
]
},
"text": {
"description": "The report or preview, plain text",
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"matchId",
"kind",
"home",
"away",
"language",
"text"
],
"additionalProperties": false
}π’get_player(format, id, language)
A player: club, position, age, nationality, market value, statistics per season and competition, injuries, transfers and honours.
Input Schema
{
"type": "object",
"properties": {
"format": {
"description": "text (default): compact summary with IDs and links. json: the raw data feed, minified and capped at 60,000 characters",
"enum": [
"text",
"json"
],
"type": "string"
},
"id": {
"description": "Player ID (e.g. 474972), or the player name (best search match is used)",
"type": "string"
},
"language": {
"description": "Language for team, competition and country names, and for the football-mania.com links (en, es, de, fr, it, pt, pt-BR, nl, ar, ru, tr, id, β¦). Default: en",
"type": "string"
}
},
"required": [
"id"
]
}π’get_standings(format, language, league_key)
Current standings (league table) of a competition: position, played, won, drawn, lost, goals, points, form and the qualification or relegation zone. Group-stage competitions return every group.
Input Schema
{
"type": "object",
"properties": {
"format": {
"description": "text (default): compact summary with IDs and links. json: the raw data feed, minified and capped at 60,000 characters",
"enum": [
"text",
"json"
],
"type": "string"
},
"language": {
"description": "Language for team, competition and country names, and for the football-mania.com links (en, es, de, fr, it, pt, pt-BR, nl, ar, ru, tr, id, β¦). Default: en",
"type": "string"
},
"league_key": {
"description": "League key from search (e.g. EnglandPremierLeague), or the competition name",
"type": "string"
}
},
"required": [
"league_key"
]
}Output Schema
{
"type": "object",
"properties": {
"competition": {
"type": "string"
},
"country": {
"description": "Country the competition is filed under, or the confederation for international competitions",
"type": "string"
},
"groups": {
"description": "Group names, when the competition has more than one table",
"items": {
"type": "string"
},
"type": [
"null",
"array"
]
},
"leagueKey": {
"type": "string"
},
"season": {
"type": "string"
},
"table": {
"description": "Every group's rows in order; each row names its group when there is more than one",
"items": {
"additionalProperties": false,
"properties": {
"drawn": {
"type": "integer"
},
"form": {
"description": "Recent results, most recent last, as W/D/L",
"type": "string"
},
"goalDifference": {
"type": "integer"
},
"goalsAgainst": {
"type": "integer"
},
"goalsFor": {
"type": "integer"
},
"group": {
"description": "Group or stage name, when the competition has more than one table",
"type": "string"
},
"live": {
"description": "true when these points include a match still in play",
"type": "boolean"
},
"lost": {
"type": "integer"
},
"note": {
"description": "Qualification or relegation note, when the feed carries one",
"type": "string"
},
"played": {
"type": "integer"
},
"points": {
"type": "integer"
},
"position": {
"type": "integer"
},
"team": {
"type": "string"
},
"teamId": {
"description": "Usable with get_team",
"type": "string"
},
"won": {
"type": "integer"
}
},
"required": [
"position",
"team",
"played",
"won",
"drawn",
"lost",
"goalsFor",
"goalsAgainst",
"goalDifference",
"points"
],
"type": "object"
},
"type": [
"null",
"array"
]
},
"url": {
"type": "string"
}
},
"required": [
"table"
],
"additionalProperties": false
}π’get_team(format, id, language, squad, timezone)
A team: recent results and upcoming fixtures, league positions, season statistics, squad with appearances and goals, injuries, transfers, coach, stadium and honours.
Input Schema
{
"type": "object",
"properties": {
"format": {
"description": "text (default): compact summary with IDs and links. json: the raw data feed, minified and capped at 60,000 characters",
"enum": [
"text",
"json"
],
"type": "string"
},
"id": {
"description": "Team ID (e.g. 9002 Arsenal, 13183 Ajax), or the team name (best search match is used)",
"type": "string"
},
"language": {
"description": "Language for team, competition and country names, and for the football-mania.com links (en, es, de, fr, it, pt, pt-BR, nl, ar, ru, tr, id, β¦). Default: en",
"type": "string"
},
"squad": {
"description": "Include the full squad. Default: true",
"type": "boolean"
},
"timezone": {
"description": "IANA time zone for kick-off times and dates, e.g. Europe/London, America/New_York, Asia/Riyadh. Default: UTC",
"type": "string"
}
},
"required": [
"id"
]
}π’get_team_image(id)
URL of a team's logo (PNG).
Input Schema
{
"type": "object",
"properties": {
"id": {
"description": "Team ID",
"type": "string"
}
},
"required": [
"id"
]
}π’get_top_scorers(format, language, league_key, limit)
Top scorers of a competition this season: goals, penalty goals, team and nationality.
Input Schema
{
"type": "object",
"properties": {
"format": {
"description": "text (default): compact summary with IDs and links. json: the raw data feed, minified and capped at 60,000 characters",
"enum": [
"text",
"json"
],
"type": "string"
},
"language": {
"description": "Language for team, competition and country names, and for the football-mania.com links (en, es, de, fr, it, pt, pt-BR, nl, ar, ru, tr, id, β¦). Default: en",
"type": "string"
},
"league_key": {
"description": "League key from search (e.g. SpainPrimeraDivision), or the competition name",
"type": "string"
},
"limit": {
"description": "Players listed. Default: 20",
"type": "number"
}
},
"required": [
"league_key"
]
}Output Schema
{
"type": "object",
"properties": {
"competition": {
"type": "string"
},
"country": {
"type": "string"
},
"leagueKey": {
"type": "string"
},
"scorers": {
"items": {
"additionalProperties": false,
"properties": {
"goals": {
"type": "integer"
},
"nationality": {
"type": "string"
},
"penalties": {
"description": "Of which scored from the penalty spot",
"type": "integer"
},
"player": {
"type": "string"
},
"playerId": {
"description": "Usable with get_player",
"type": "string"
},
"rank": {
"type": "integer"
},
"team": {
"type": "string"
},
"teamId": {
"description": "Usable with get_team",
"type": "string"
},
"tournament": {
"description": "Stage name, when the competition splits into more than one",
"type": "string"
}
},
"required": [
"rank",
"player",
"goals"
],
"type": "object"
},
"type": [
"null",
"array"
]
},
"url": {
"type": "string"
}
},
"required": [
"scorers"
],
"additionalProperties": false
}π’health(message)
Connectivity check: echoes the message back.
Input Schema
{
"type": "object",
"properties": {
"message": {
"description": "Text to echo",
"type": "string"
}
},
"required": []
}π’search(country, format, language, query, timezone)
Find teams, players and competitions by name. Returns results with an id (team:β¦, player:β¦, league:β¦) for fetch or the other tools, a title, a football-mania.com url and a short summary; teams include their last and next match.
Input Schema
{
"type": "object",
"properties": {
"country": {
"description": "Prefer results from this country (in English)",
"type": "string"
},
"format": {
"description": "text (default): compact summary with IDs and links. json: the raw data feed, minified and capped at 60,000 characters",
"enum": [
"text",
"json"
],
"type": "string"
},
"language": {
"description": "Language for team, competition and country names, and for the football-mania.com links (en, es, de, fr, it, pt, pt-BR, nl, ar, ru, tr, id, β¦). Default: en",
"type": "string"
},
"query": {
"description": "Name or part of it (e.g. Arsenal, MbappΓ©, Premier League)",
"type": "string"
},
"timezone": {
"description": "IANA time zone for kick-off times and dates, e.g. Europe/London, America/New_York, Asia/Riyadh. Default: UTC",
"type": "string"
}
},
"required": [
"query"
]
}Community
Evidence