MCP connector · Sports

Kickmesh Football Data + News MCP

Football fixtures, tables and news for your bot.

Featured

  • 17 tools
  • 41 tests passing
  • Free and open

InstallSupport the project

See it work

Example. A real tool and its real input. No live data is shown here.

You ask
“Show me the Premier League table for 2024.”
Your bot calls
standings with league 39, season 2024
It gets back
The league table for that season. The free API-Football plan covers seasons 2022 to 2024.

Install

npm install && npm run build

Run it in this connector's project folder. Full steps are in the Docs. Install guide

Facts

Tools
17
Tests
41 passing
Licence
Not stated yet
Source
Not public yet
Listing updated
31 October 2026
Maintained by
Bot Essentials

Tests were run on 27 October 2026 in a clean copy of each connector. You bring your own keys for any service it talks to.

Details and limits

14 API-Football data tools and 3 news tools: latest_news, news_search, and list_sources.

Six feeds: BBC Sport, Sky Sports, ESPN, The Guardian, The Independent, and CBS Sports.

Bring your own API-Football key. The studio does not resell request quota.

The free API-Football plan covers seasons 2022–2024 only. Live and current-season data (plus next/last match filters) needs your own paid API-Football plan.

You run the server over stdio, Streamable HTTP, or Docker.

The catalogue price is Free.

14 data tools

These tools are registered in kickmesh-mcp 0.1.0. They call API-Football v3 at https://v3.football.api-sports.io, except api_budget, which stays local.

  • live_scores

    Live fixtures in progress, with an optional league filter.

  • fixtures

    Fixtures by date, league, team, or season.

  • standings

    League table for a season.

  • team_stats

    Team statistics for one league season.

  • player_stats

    Player statistics by id, team, or league, with an optional name search.

  • lineups

    Lineups for a fixture.

  • events

    Goals, cards, and substitutions in a fixture.

  • transfers

    Transfers for a player or a team.

  • injuries

    Injuries by league and season, team, fixture, or date.

  • odds

    Pre-match odds.

  • predictions

    API-Football predictions for a fixture.

  • search_teams

    Find teams by name. The API search is sent on its own.

  • search_leagues

    Find leagues and cups by name, or list them by country and season.

  • api_budget

    Local daily and per-minute budget: day, used, remaining, dailyLimit, perMinuteLimit.

Parameters, search rules, and error text are in the install guide.

News layer

latest_news, news_search, and list_sources are shipped in kickmesh-mcp 0.1.0. Each item is a headline plus a short summary (2 sentences max), with source attribution and the original link. The tools never return full articles. News uses no API-Football requests, so the 100/day quota is untouched.

The news tools read these feeds:

  • latest_news

    Latest items: a headline, a short summary (2 sentences max), source attribution, and the original link. Never a full article.

  • news_search

    Search headlines and short summaries. Each hit keeps source attribution and the original link, and is never a full article.

  • list_sources

    List the six RSS sources this connector reads, with each homepage.

Bring your own API-Football key

Set API_FOOTBALL_KEY. A free key comes from the API-Football dashboard. The free plan is 100 requests a day. The server keeps an in-memory TTL cache, a daily budget, and a per-minute limit so a chatty client spends that budget more slowly.

  • Cache hits do not call the API and do not spend budget.
  • Default daily budget 100, reset at 00:00 UTC, synced from the x-ratelimit-requests-remaining header.
  • Default per-minute limit 10.
  • When the daily budget is spent, tools return an error prefixed with [budget]. Cached data is still served.
  • Counters and cache live in memory and reset when the process restarts.
Cache keyTTLTool
fixtures:live30 secondslive_scores
fixtures/events60 secondsevents
fixtures5 minutesfixtures
fixtures/lineups10 minuteslineups
odds30 minutesodds
standings1 hourstandings
teams/statistics1 hourteam_stats
players1 hourplayer_stats
injuries1 hourinjuries
predictions1 hourpredictions
teams24 hourssearch_teams
leagues24 hourssearch_leagues
transfers24 hourstransfers

stdio, Streamable HTTP, and Docker

stdio

npm start is the default. The process speaks MCP on standard input and output. Point a local client at dist/index.js and pass the key in the environment.

Streamable HTTP

npm run start:http, or set MCP_TRANSPORT=http. The server listens on port 3000. The MCP path is /mcp. /health returns the text ok.

Docker

The image is Node 20 Alpine, multi-stage, and sets MCP_TRANSPORT=http with PORT=3000. It exposes port 3000 and runs node dist/index.js.

docker build -t kickmesh-mcp . && docker run -p 3000:3000 -e API_FOOTBALL_KEY=your_key kickmesh-mcp

Setup

  1. 01

    Get a free key

    Create an API-Football key. The free plan allows 100 requests a day. Export it as API_FOOTBALL_KEY.

  2. 02

    Build the server

    In the kickmesh-mcp project, run npm install and npm run build. That compiles TypeScript to dist/index.js.

  3. 03

    Pick a transport

    npm start speaks stdio. npm run start:http serves Streamable HTTP on port 3000. The Docker image serves HTTP the same way.

npm install && npm run build
export API_FOOTBALL_KEY=your_key   # free key: https://dashboard.api-football.com
npm start                  # stdio
npm run start:http         # Streamable HTTP at http://localhost:3000/mcp
npm test                   # mocked tests, no key needed

Install guide with the client JSON, cache table, environment variables, and tests.

Package id: kickmesh-football-data-news-mcp.