Live Tennis API

Real-time tennis scores, players, rankings, market prices and AI win-probability for ATP, WTA, Challenger and ITF, exposed as read-only MCP tools.

Documentation

Live Tennis API

livetennisapi-mcp

MCP server for the Live Tennis API.

Give Claude, Cursor, Zed or any MCP client live tennis scores, players, odds and model win-probability — for ATP, WTA, Challenger and ITF.

npm license

Documentation · Get an API key


Setup

Claude Code

claude mcp add livetennis -e LIVETENNISAPI_KEY=twjp_… -- npx -y livetennisapi-mcp

Claude Desktop — add to claude_desktop_config.json:

{
  "mcpServers": {
    "livetennis": {
      "command": "npx",
      "args": ["-y", "livetennisapi-mcp"],
      "env": { "LIVETENNISAPI_KEY": "twjp_…" }
    }
  }
}

Cursor / Zed / others — same command, same env var. No install step; npx fetches it on demand.

Get a key at livetennisapi.com.

Try it

"What tennis matches are live right now?" "Who's winning the Alcaraz match, and what does the model give him?" "Show me Sinner's ranking and recent results." "What are the current odds on match 18953?"

Tools

ToolDoesPlan
get_live_matchesMatches in progress, with live scoresBASIC
get_upcoming_matchesMatches starting soonBASIC
get_matchFull detail for one matchBASIC
get_match_scoreCurrent score only — fastest readBASIC
search_playersFind players by nameBASIC
get_playerProfile, ranking, country, handednessBASIC
get_fixturesForward scheduleBASIC
get_recent_resultsCompleted matches and winnersBASIC
get_match_eventsBreaks, games, sets, momentum runsPRO
get_match_oddsMatch-winner prices — bid / ask / midPRO
get_match_analysisModel thesis, win probability, key factorsULTRA
check_api_statusReachability + which plan your key is on

Tier awareness

The API gates endpoints by plan and returns a bare 403 {"error":"upgrade_required"}. Handed that, a model will usually invent a reason or retry pointlessly.

So every tool that can hit a tier wall returns a plain-English explanation — as a normal result, not an error — naming the tier required and where to upgrade. The assistant can then tell you something true and actionable:

This data requires the ULTRA plan, and the configured API key is on a lower tier. Nothing is wrong with the key — the endpoint is simply not included in the current plan. Upgrade at https://livetennisapi.com/#pricing

check_api_status probes upward to report which plan your key is actually on, so you can diagnose that without guessing.

Plans

BASICPROULTRA
Matches, scores, players, fixtures, results
Match events + odds
Model analysis + win probability

Notes

  • Read-only. Every tool is a GET; nothing here can modify anything.
  • Your key stays local. It is read from the environment by the server process on your machine and sent only to api.livetennisapi.com.
  • Requires Node 18+.

Development

npm install
npm run build
LIVETENNISAPI_KEY=twjp_… node dist/index.js   # speaks MCP over stdio

Built on the official livetennisapi client.

Related

Everything in the Live Tennis API developer surface:

InstallSourcePackage
Python clientpip install livetennisapirepopackage
JavaScript / TypeScript clientnpm install livetennisapirepopackage
MCP server for LLM agents (this repo)npx livetennisapi-mcppackage

Licence

MIT — see LICENSE. Use of the API service is governed by the Terms of Service.