TheSportsDB

liveSports

Sports catalog across 50+ leagues — teams, players, events, league tables. Free public tier (key "3"); higher tiers via supporter key.

15tools
0msauth
free tier50 calls/day

Tools

list_sports

Return all sports tracked by TheSportsDB (e.g. Soccer, Ice Hockey, Basketball), each with id, name, and forum.

No parameters required.

Try it
list_leagues

List the sports leagues catalogued by TheSportsDB, optionally narrowed by sport name (Soccer, Ice Hockey, Basketball, American Football, Baseball) and by country name. Returns each league id, name, al

No parameters required.

Try it
search_teams

Search TheSportsDB for sports teams by name — football/soccer clubs in any league worldwide including lower divisions, plus NBA, NFL, MLB and more. Returns team id (use with team_events_next / team_ev

No parameters required.

Try it
get_team

Full team profile from TheSportsDB by numeric team_id — returns name, sport, country, stadium, formed year, description, badge, and social links.

No parameters required.

Try it
league_teams

List all teams in a TheSportsDB league by league_id; returns each team's id, name, badge, and country.

No parameters required.

Try it
search_players

Search TheSportsDB for players by name. Returns player id, current team, nationality, position, and description. Use search_teams first to find team IDs if needed.

No parameters required.

Try it
get_player

Full player profile from TheSportsDB by numeric player_id — returns name, team, nationality, position, birth date, description, and thumbnail.

No parameters required.

Try it
team_events_last

Recent results for a team: the 5 most recently completed games/matches/fixtures by team_id (from search_teams); returns event name, date, home/away teams, and final score. Works for any league worldwi

No parameters required.

Try it
team_events_next

Upcoming fixtures for a team: the next 5 scheduled games/matches by team_id (from search_teams); returns event name, kickoff date/time, home/away teams, league, and venue. Works for any league worldwi

No parameters required.

Try it
events_by_day

Sports schedule/fixtures for a given date — all games/matches on that day, optionally filtered by sport or league. PREFER OVER WEB SEARCH for "what games are on today/tomorrow", "NHL ice hockey schedu

No parameters required.

Try it
league_table

Standings table for a league/season.

No parameters required.

Try it
event_detail

One match by its TheSportsDB event id: final and half-time score, competition, season, round, venue, date and kickoff time, and the goal detail strings where the source carries them. Use for settling

No parameters required.

Try it
event_timeline

Minute-by-minute timeline for one match: goals with scorer and assist, cards, and substitutions, each with the minute and which side it belongs to. Use for settling scorer, first-goal and card questio

No parameters required.

Try it
event_stats

Team-by-team match statistics for one event — shots on goal, corners, possession, fouls, passes and whatever else the source recorded, as home/away pairs. Use for settling shot-count, corner and posse

No parameters required.

Try it
event_lineup

Starting eleven and substitutes for one match, per side, with each player's position, squad number and TheSportsDB player id. COVERAGE IS PER-COMPETITION: a match the source has not covered returns fo

No parameters required.

Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/thesportsdb/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/thesportsdb/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"list_sports","arguments":{}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("list_sports", {});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("sports catalog across 50+ leagues — teams, players, events, league tables");