LiveScore MCP

io.github.holodukePublished by GitHub account holodukev1.3.1Updated Oct 28, 2026

Football live scores, fixtures, standings, top scorers, matches, teams and players for 1000+ leagues

VerifiedStreamable HTTPWeb executableLocation & LifestyleWeb Search & Scraping

Overview

AI-generated overview

Free remote MCP server giving an assistant live football scores, fixtures, standings, match details, team and player data from 1000+ leagues.

What you can do
  • Look up live scores and day or competition fixtures, filtered by country or league
  • Read league tables, top scorers and all-time head-to-head records
  • Open a single match: events, line-ups, statistics, injuries, form, commentary and written report or preview
  • Inspect team and player profiles, including squads, transfers, market value and honours
  • Search teams, players and competitions by name and fetch full details for a result id
  • Get a team logo URL and check connectivity
When to use it
Useful when you want an assistant to answer football questions — today's scores, a league table, a club's squad or a fixture list — without building your own data pipeline. It suits personal, non-commercial use in any MCP client that supports remote HTTP endpoints.
Requirements
A remote Streamable HTTP endpoint (an SSE endpoint is offered for older clients); no API key or account is needed. Optional parameters set time zone, language and JSON output. Self-hosting requires Go or Docker and is intended for development and testing.
Before you install
Free for personal and non-commercial use only; commercial use needs permission, and bulk scraping or automated harvesting is not allowed. Rate limits apply (30 tool calls per minute per IP). All tools are read-only, but queries and the requesting IP go to the hosted service, which draws its data from football-mania.com.

Installation

In SourceWeft

  1. Open LiveScore MCP in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.holoduke%2Flivescore-mcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "livescore": {
      "type": "http",
      "url": "https://livescoremcp.com/mcp"
    }
  }
}

README

LiveScore MCP

Free Model Context Protocol server for real-time football scores, fixtures, team stats, and player data from 1000+ leagues worldwide.

livescoremcp.com

Quick Start

Connect any MCP client to the Streamable HTTP endpoint:

https://livescoremcp.com/mcp

Clients that only support the older SSE transport use https://livescoremcp.com/sse. No API key or account needed.

Claude Code

bash
claude mcp add --transport http livescore https://livescoremcp.com/mcp

Claude Desktop / claude.ai

Settings → Connectors → Add custom connector → https://livescoremcp.com/mcp

ChatGPT

Settings → Apps & Connectors → Create (developer mode) → https://livescoremcp.com/mcp, no authentication. search and fetch follow the format ChatGPT connectors and deep research require.

Cursor, Windsurf, VS Code, Cline and others

json
{  "mcpServers": {    "livescore": {      "url": "https://livescoremcp.com/mcp"    }  }}

Available Tools

ToolDescription
get_live_scoresMatches in play right now, with score and minute; filter by country or league
get_day_fixturesAll matches on a date (results, live, kick-off times); filter by country or league
get_league_fixturesA competition's latest results, live matches and upcoming fixtures, or one round
get_standingsLeague table: points, goal difference, form, qualification and relegation zones
get_top_scorersTop scorers of a competition
get_head_to_headAll-time record of two teams, recent meetings and their next meeting
get_matchMatch details: events, line-ups, substitutions, statistics, injuries, form, report and head-to-head
get_teamTeam profile: results, fixtures, squad, injuries, transfers, coach, stadium, honours
get_playerPlayer profile: statistics per season and competition, market value, injuries, transfers
searchFind teams, players and competitions; returns typed ids (team:9002, league:EnglandPremierLeague), titles and links
fetchFull details for an id from search (team, player, competition or match)
get_team_imageTeam logo URL
get_fixturesAlias of get_league_fixtures (kept for 1.0 clients)
get_match_reportWritten report of a finished match, or a preview of one to come, with its sources; translated into nine languages
get_match_commentaryMinute-by-minute commentary plus goals, cards and substitutions in order
healthConnectivity check

Tools that return a list or a report also set structuredContent alongside the text, described by the tool's outputSchema, so a client can read fields instead of parsing prose. The text itself is unchanged.

Answers are compact text written for language models: IDs for follow-up calls and a football-mania.com link for every match, team, player and competition. Every tool is read-only.

  • Names or IDs: teams, players and competitions can be passed by name ("Arsenal", "La Liga"); the best search match is used.
  • Time zones: pass timezone (IANA, e.g. Europe/London) and kick-off times and "today" follow it; the default is UTC.
  • Languages: language (en, es, de, fr, pt, pt-BR, ar, …) sets team and competition names and the language of the links.
  • Raw data: format: "json" returns the underlying feed.

Prompts

Clients that support MCP prompts offer these as ready-made commands:

PromptArguments
match_previewteam_a, team_b
league_roundupleague
team_reportteam
live_nowcountry (optional)

Example Queries

Once connected, just ask your AI assistant:

  • "What are the live scores right now?"
  • "Show me the Premier League table"
  • "Who are the top scorers in La Liga?"
  • "How did Barcelona do this week, and who do they play next?"
  • "Who scored in the Champions League tonight?"
  • "What matches are on this Saturday in Brazil?"
  • "Tell me about Ajax's squad and injuries"
  • "What's the head-to-head between Real Madrid and Barcelona?"

Data Source

All football data is provided by football-mania.com - a comprehensive football data platform covering 1000+ leagues and competitions worldwide with real-time scores, fixtures, team statistics, player profiles, and match details.

Football Mania is also available as a mobile app:

Usage Policy

LiveScore MCP is free for personal and non-commercial use.

  • Rate limits are enforced (30 tool calls/min per IP)
  • Bulk scraping and automated data harvesting are not allowed
  • Commercial use requires permission - open an issue to discuss

Tech Stack

  • Go with mcp-go
  • Streamable HTTP (/mcp, stateless) and SSE (/sse) transports
  • Deployed on Coolify

Self-Hosting

The football data comes from football-mania.com's own API, which serves the hosted instance at livescoremcp.com; a self-hosted copy is meant for development and testing.

bash
git clone https://github.com/holoduke/livescore-mcp.gitcd livescore-mcpgo build -o livescore-mcp .PORT=8080 ./livescore-mcp

Or with Docker:

bash
docker build -t livescore-mcp .docker run -p 8080:8080 livescore-mcp

License

MIT

Source: README.md at commit d71ad1c

Tools

16

fetch

Fetch a team, player, competition or match

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.

Parametersidrequiredlanguagetimezone

get_day_fixtures

Matches on a date

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.

Parametersdatelimitformatcountrylanguagetimezonetzoffsetleague_key

get_fixtures

Competition fixtures (alias)

Same as get_league_fixtures; accepts the competition key with or without the _small suffix.

Parameterslimitroundformatlanguagetimezonecompetitionrequired

get_head_to_head

Head-to-head record

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.

Parameterslimitformatteam_arequiredteam_brequiredlanguagetimezone

get_league_fixtures

Competition fixtures and results

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.

Parameterslimitroundformatlanguagetimezoneleague_keyrequired

get_live_scores

Live football scores

Football matches being played right now, worldwide, with score and minute, grouped by competition (biggest competitions first). Optional filters by country or league key.

Parametersformatcountrylanguagetimezoneleague_key

get_match

Match details

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.

Parametersidrequiredh2hformatlanguagetimezone

get_match_commentary

Live commentary and events

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.

Parameterslimitformatlanguagematch_idrequiredevents_only

get_match_report

Match report or preview

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.

Parameterskindlanguagematch_idrequired

get_player

Player profile

A player: club, position, age, nationality, market value, statistics per season and competition, injuries, transfers and honours.

Parametersidrequiredformatlanguage

get_standings

League table

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.

Parametersformatlanguageleague_keyrequired

get_team

Team profile

A team: recent results and upcoming fixtures, league positions, season statistics, squad with appearances and goals, injuries, transfers, coach, stadium and honours.

Parametersidrequiredsquadformatlanguagetimezone

get_team_image

Team logo

URL of a team's logo (PNG).

Parametersidrequired

get_top_scorers

Top scorers

Top scorers of a competition this season: goals, penalty goals, team and nationality.

Parameterslimitformatlanguageleague_keyrequired

health

Connectivity check

Connectivity check: echoes the message back.

Parametersmessage

Version history

2
  1. v1.3.1LatestOct 11, 2026
  2. v1.2.0Oct 11, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts