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
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
standingswith 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 buildRun 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_scoresLive fixtures in progress, with an optional league filter.
fixturesFixtures by date, league, team, or season.
standingsLeague table for a season.
team_statsTeam statistics for one league season.
player_statsPlayer statistics by id, team, or league, with an optional name search.
lineupsLineups for a fixture.
eventsGoals, cards, and substitutions in a fixture.
transfersTransfers for a player or a team.
injuriesInjuries by league and season, team, fixture, or date.
oddsPre-match odds.
predictionsAPI-Football predictions for a fixture.
search_teamsFind teams by name. The API search is sent on its own.
search_leaguesFind leagues and cups by name, or list them by country and season.
api_budgetLocal 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_newsLatest items: a headline, a short summary (2 sentences max), source attribution, and the original link. Never a full article.
news_searchSearch headlines and short summaries. Each hit keeps source attribution and the original link, and is never a full article.
list_sourcesList 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-remainingheader. - 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 key | TTL | Tool |
|---|---|---|
fixtures:live | 30 seconds | live_scores |
fixtures/events | 60 seconds | events |
fixtures | 5 minutes | fixtures |
fixtures/lineups | 10 minutes | lineups |
odds | 30 minutes | odds |
standings | 1 hour | standings |
teams/statistics | 1 hour | team_stats |
players | 1 hour | player_stats |
injuries | 1 hour | injuries |
predictions | 1 hour | predictions |
teams | 24 hours | search_teams |
leagues | 24 hours | search_leagues |
transfers | 24 hours | transfers |
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-mcpSetup
- 01
Get a free key
Create an API-Football key. The free plan allows 100 requests a day. Export it as API_FOOTBALL_KEY.
- 02
Build the server
In the kickmesh-mcp project, run npm install and npm run build. That compiles TypeScript to dist/index.js.
- 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 neededInstall guide with the client JSON, cache table, environment variables, and tests.
Package id: kickmesh-football-data-news-mcp.