Skip to content

LiveScore MCP

by holoduke · remote · no sign-in to list tools · v1.3.1 · published by GitHub user holoduke

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

Changes · 1

16 tools: 1 change things and 15 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

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

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

16 tools

Changes things 1Claude Code: ask
  • healthConnectivity check: echoes the message back.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Connectivity check: echoes the message back.

    Annotations the server declares

    • title: Connectivity check
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
Only reads 15Claude Code: allow
  • fetchFull details for an id from search: team:<id>, player:<id>, league:<league key> or match:<id>.Reads text others writeNo findings

    Why it is in this group

    • The name "fetch" says "fetch": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Fetch a team, player, competition or match
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_day_fixturesAll football matches on a date: results, live scores and kick-off times, grouped by competition (biggest competitions first).Reads text others writeNo findings

    Why it is in this group

    • The name "get_day_fixtures" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Matches on a date
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_fixturesSame as get_league_fixtures; accepts the competition key with or without the _small suffix.Reads text others writeNo findings

    Why it is in this group

    • The name "get_fixtures" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Same as get_league_fixtures; accepts the competition key with or without the _small suffix.

    Annotations the server declares

    • title: Competition fixtures (alias)
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_head_to_headAll-time head-to-head record of two teams: wins, draws, goals, their recent meetings and the next scheduled meeting.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "get_head_to_head" says "get": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "meeting": it reads calendars.
    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Head-to-head record
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_league_fixturesFixtures and results of one competition (league or cup): latest results, matches in play and upcoming matches of the current season, or one round.Reads text others writeNo findings

    Why it is in this group

    • The name "get_league_fixtures" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Competition fixtures and results
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_live_scoresFootball matches being played right now, worldwide, with score and minute, grouped by competition (biggest competitions first).Reads text others writeNo findings

    Why it is in this group

    • The name "get_live_scores" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Football matches being played right now, worldwide, with score and minute, grouped by competition (biggest competitions first). Optional filters by country or league key.

    Annotations the server declares

    • title: Live football scores
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_matchOne match in detail: score, status, goals, cards and substitutions with minutes, line-ups, team statistics (possession, shots, corners…), injuries, form, standings of both teams, m…Reads text others writeNo findings

    Why it is in this group

    • The name "get_match" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Match details
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_match_commentaryMinute-by-minute written commentary for a match, plus the goals, cards and substitutions in order.Reads text others writeNo findings

    Why it is in this group

    • The name "get_match_commentary" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Live commentary and events
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_match_reportA written report of a finished match, or a preview of one still to come, with the story and the sources it drew on.Reads text others writeNo findings

    Why it is in this group

    • The name "get_match_report" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Match report or preview
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_playerA player: club, position, age, nationality, market value, statistics per season and competition, injuries, transfers and honours.Reads text others writeNo findings

    Why it is in this group

    • The name "get_player" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    A player: club, position, age, nationality, market value, statistics per season and competition, injuries, transfers and honours.

    Annotations the server declares

    • title: Player profile
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_standingsCurrent standings (league table) of a competition: position, played, won, drawn, lost, goals, points, form and the qualification or relegation zone.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "get_standings" says "get": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "table": it reads databases.
    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: League table
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_teamA team: recent results and upcoming fixtures, league positions, season statistics, squad with appearances and goals, injuries, transfers, coach, stadium and honours.Reads text others writeNo findings

    Why it is in this group

    • The name "get_team" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    A team: recent results and upcoming fixtures, league positions, season statistics, squad with appearances and goals, injuries, transfers, coach, stadium and honours.

    Annotations the server declares

    • title: Team profile
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_team_imageURL of a team's logo (PNG).Reads text others writeNo findings

    Why it is in this group

    • The name "get_team_image" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • untrusted-inputThe description's first sentence says "url": it reads web pages, which anyone can write.
    Description, as the server wrote it
    URL of a team's logo (PNG).

    Annotations the server declares

    • title: Team logo
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_top_scorersTop scorers of a competition this season: goals, penalty goals, team and nationality.Reads text others writeNo findings

    Why it is in this group

    • The name "get_top_scorers" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Top scorers of a competition this season: goals, penalty goals, team and nationality.

    Annotations the server declares

    • title: Top scorers
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Exfil surface

Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.

No private-data, untrusted-input, outbound path in this server alone: no tool is tagged outbound.

Reads private data2
Reads files, mail, messages, databases, secrets, calendars or repositories.
Reads text others write16
Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
Can send data out0
Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.

Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.

Install

Pinned to version 1.3.1. Values in angle brackets are yours to fill in.

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

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__livescore__fetch",
      "mcp__livescore__get_day_fixtures",
      "mcp__livescore__get_fixtures",
      "mcp__livescore__get_head_to_head",
      "mcp__livescore__get_league_fixtures",
      "mcp__livescore__get_live_scores",
      "mcp__livescore__get_match",
      "mcp__livescore__get_match_commentary",
      "mcp__livescore__get_match_report",
      "mcp__livescore__get_player",
      "mcp__livescore__get_standings",
      "mcp__livescore__get_team",
      "mcp__livescore__get_team_image",
      "mcp__livescore__get_top_scorers",
      "mcp__livescore__search"
    ],
    "ask": [
      "mcp__livescore__health"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as livescore. Review it before you use it.

Capability tags behind 16 rules
  • mcp__livescore__fetch untrusted-input
  • mcp__livescore__get_day_fixtures untrusted-input
  • mcp__livescore__get_fixtures untrusted-input
  • mcp__livescore__get_head_to_head private-data, untrusted-input
  • mcp__livescore__get_league_fixtures untrusted-input
  • mcp__livescore__get_live_scores untrusted-input
  • mcp__livescore__get_match untrusted-input
  • mcp__livescore__get_match_commentary untrusted-input
  • mcp__livescore__get_match_report untrusted-input
  • mcp__livescore__get_player untrusted-input
  • mcp__livescore__get_standings private-data, untrusted-input
  • mcp__livescore__get_team untrusted-input
  • mcp__livescore__get_team_image untrusted-input
  • mcp__livescore__get_top_scorers untrusted-input
  • mcp__livescore__health untrusted-input
  • mcp__livescore__search untrusted-input