体育中心MCP服务器
聚合的统一MCP服务器 32家体育API供应商 成为单一服务。 336工具 涵盖70多个体育项目的分数、统计数据、赔率、电子竞技、大学体育、国际象棋、AFL等。
每个供应商都独立工作。您只需要您使用的提供程序的API密钥。缺少键不会阻止启动——工具在没有键的情况下调用时会返回错误。
适用于:       
演示
NBA得分、英超赔率、网球H2H——所有这些都来自一个MCP服务器。
兼容性
平台
| OS | 状态 |
|---|---|
| macOS | 支持 |
| Linux | 支持 |
| Windows | 支持 |
MCP客户端
| 客户 | 状态 | 备注 |
|---|---|---|
| 克劳德桌面版 | 支持 | Anthropic的桌面应用程序 |
| 克劳德代码(CLI) | 支持 | claude mcp add |
| 光标 | 支持 | 内置MCP |
| 风帆冲浪(Codeium) | 支持 | 内置MCP |
| Continue.dev | 支持 | 开源AI助手 |
| 克莱恩 | 支持 | VS代码扩展 |
| 泽德 | 支持 | 内置MCP |
| ChatGPT桌面 | 支持 | OpenAI桌面应用程序 |
| Gemini CLI | 支持 | 谷歌CLI |
| 任何MCP客户端 | 支持 | 标准+HTTP/SSE传输 |
使用 stdio传输 从 MCP-SDK与任何法学硕士(克劳德、GPT、双子座、拉玛、米斯特拉尔等)合作。
需求:Node.js 18+,npm。
供应商(32)
立即工作-无API密钥,无注册(12个提供商,约109个工具)
这些提供商开箱即用。只需构建并运行。
| 前缀 | 提供者 | 覆盖范围 | 工具 | 注释 |
|---|---|---|---|---|
espn_ | 娱乐与体育节目电视网 | 20+运动 | 10 | 非官方-可以打破 |
nhl_ | NHL网站API | NHL | 13 | 无记录但稳定 |
mlb_ | MLB统计API | MLB/MiLB | 13 | 官方,无证件 |
f1_ | 乔皮卡F1 | F1(1950+) | 13 | 社区维护 |
openf1_ | OpenF1 | F1现场遥测 | 12 | 仅限周末现场比赛 |
openliga_ | OpenLigaDB | 德国足球 | 10 | 德甲焦点 |
sportsdb_ | 体育DB | 40+运动 | 13 | 测试密钥自动,水印 |
ncaa_ | NCAA API | 大学体育 | 8 | 5要求/秒速率限制 |
sportsrc_ | 体育SRC | 足球、篮球、综合格斗+流媒体 | 7 | V1免费,V2需要付费密钥 |
lichess_ | 巫妖 | 国际象棋(用户、顶级玩家、广播、每日谜题) | 7 | ~20要求/秒/IP |
chesscom_ | Chess.com | 国际象棋(个人资料、统计数据、俱乐部、排行榜) | 7 | 限制平行通话 |
squiggle_ | 弯弯曲曲 | AFL(澳大利亚足球联盟) | 6 | 需要诚实的UA |
小贴士:使用 SPORTS_HUB_PROVIDERS=free 仅加载这12个提供者(约109个工具)。带有API密钥的免费层-需要注册,无需信用卡(21个提供商,约227个工具)
注册需要1-2分钟。所有钥匙都是免费的。
| 前缀 | 提供者 | 覆盖率 | 工具 | 自由限制 | 获取密钥 |
|---|---|---|---|---|---|
pandascore_ | PandaScore | 电子竞技(13个冠军) | 14 | 1000个要求/小时 | 注册 |
apifootball_ | API-足球 | 足球(960多个联赛) | 15 | 需要100个/天 | 注册 |
apisports_ | API-运动 | 9项运动 | 10项 | 需要100项/天/运动 | 注册 |
apitennis_ | API-网球 | 网球(ATP/WTA/ITF) | 12 | 100要求/天 | 注册 |
bdl_ | BallDontLie | NBA/NFL/MLB/NHL | 10 | 基本级别 | 注册 |
cricket_ | 板球数据 | 板球 | 10 | 100需求/天 | 注册 |
entitycricket_ | 实体体育 | 板球(250+个comps) | 12 | 免费计划 | 注册 |
footballdata_ | football-data.org | 足球(12个联赛) | 11 | 10个要求/分钟 | 注册 |
sportmonks_ | 体育僧侣 | 足球 | 12 | 3000需求/小时 | 注册 |
sportsdata_ | sportsdataio | 9项运动 | 12项 | 每月1000次 | 注册 |
odds_ | 赔率API | 70+运动赔率 | 9 | 500 req/mo | 注册 |
oddsio_ | 赔率-API.io | 34体育赔率 | 10 | 免费帐户 | 注册 |
sgo_ | 体育比赛赔率 | 55+联赛赔率 | 10 | 试训 | 注册 |
mma_ | 西红柿格斗 | 综合格斗 | 8 | 每月200次 | 注册 |
livegolf_ | 现场高尔夫API | 高尔夫(PGA/DP World) | 8 | 免费等级 | 注册 |
isports_ | iSportsAPI | 足球/篮球(亚洲) | 10 | 免费套餐 | 注册 |
sportdevs_ | SportDevs | 橄榄球/排球/手球 | 12 | 试训 | 注册 |
msf_ | MySportsFeeds | 美国国家橄榄球联盟/NBA/MLB/NHL | 12 | 免费非商业 | 注册 |
golfcourse_ | 高尔夫球场API | 30K+个高尔夫球场 | 6 | 300个/天 | 注册 |
cfbd_ | 大学橄榄球数据 | NCAA足球 | 14 | 每月1000次 | 注册 |
缺少密钥的提供程序不会阻塞服务器——它们只是在调用时返回错误。根据需要逐步注册密钥。
安装
快速(npx--无需安装)
npx mcp-sports-hubnpm全局
npm install -g mcp-sports-hub
mcp-sports-hub来源
git clone https://github.com/lacausecrypto/mcp-sports-hub.git
cd mcp-sports-hub
npm install
npm run buildMCP注册表
此服务器发布在 MCP官方注册 作为 io.github.lacausecrypto/sports-hub支持注册表的.MCP客户端可以自动发现并安装它。
运输方式
Stdio(默认--克劳德桌面、光标等)
npx mcp-sports-hubHTTP/SSE(远程客户端、web应用程序、自定义集成)
# Via flag
npx mcp-sports-hub --http
# Via env
SPORTS_HUB_HTTP=1 SPORTS_HUB_PORT=3000 npx mcp-sports-hub终点:
POST /mcp--MCP协议(带SSE的流式HTTP)GET /health--健康检查({"status":"ok","providers":9})
支持CORS,通过以下方式进行会话管理 mcp-session-id 头球默认端口:3000。
配置
环境变量
仅为您想要的提供商设置密钥:
# Free — no key needed:
# ESPN, NHL, MLB, Jolpica F1, OpenF1, OpenLigaDB, NCAA, TheSportsDB (test key),
# SportSRC (V1), Lichess, Chess.com, Squiggle (AFL)
# Optional (defaults to test key)
export THESPORTSDB_API_KEY="your-key" # https://www.thesportsdb.com/
# Requires free registration
export PANDASCORE_TOKEN="your-token" # https://pandascore.co/
export API_SPORTS_KEY="your-key" # https://api-sports.io/
export API_FOOTBALL_KEY="your-key" # https://www.api-football.com/
export API_TENNIS_KEY="your-key" # https://api-tennis.com/
export BALLDONTLIE_API_KEY="your-key" # https://www.balldontlie.io/
export CRICKETDATA_API_KEY="your-key" # https://cricketdata.org/
export ENTITY_SPORT_KEY="your-key" # https://www.entitysport.com/
export FOOTBALL_DATA_API_KEY="your-key" # https://www.football-data.org/
export SPORTMONKS_API_KEY="your-key" # https://www.sportmonks.com/
export SPORTSDATA_IO_KEY="your-key" # https://sportsdata.io/
export THE_ODDS_API_KEY="your-key" # https://the-odds-api.com/
export ODDS_API_IO_KEY="your-key" # https://odds-api.io/
export SPORTS_GAME_ODDS_KEY="your-key" # https://sportsgameodds.com/
export FIGHTING_TOMATOES_API_KEY="your-key" # https://fightingtomatoes.com/
export LIVE_GOLF_API_KEY="your-key" # https://livegolfapi.com/
export ISPORTSAPI_KEY="your-key" # https://www.isportsapi.com/
export SPORTDEVS_API_KEY="your-key" # https://sportdevs.com/
export GOLFCOURSE_API_KEY="your-key" # https://golfcourseapi.com/
export MYSPORTSFEEDS_USER="your-user" # https://www.mysportsfeeds.com/
export MYSPORTSFEEDS_PASS="your-pass"
export CFBD_API_KEY="your-key" # https://collegefootballdata.com/key视窗 (PowerShell):
$env:API_SPORTS_KEY = "your-key"
$env:PANDASCORE_TOKEN = "your-token"视窗 (cmd):
set API_SPORTS_KEY=your-key
set PANDASCORE_TOKEN=your-token克劳德桌面版
配置文件位置:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 视窗:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/claude/claude_desktop_config.json
{
"mcpServers": {
"sports-hub": {
"command": "node",
"args": ["/absolute/path/to/mcp-sports-hub/dist/index.js"],
"env": {
"PANDASCORE_TOKEN": "your-token",
"API_SPORTS_KEY": "your-key",
"THE_ODDS_API_KEY": "your-key"
}
}
}
}Windows路径: "args": ["C:/Users/you/mcp-sports-hub/dist/index.js"]
只包含您需要的提供程序的env变量。省略 env 完全免费的供应商。
克劳德代码(CLI)
claude mcp add sports-hub node /absolute/path/to/mcp-sports-hub/dist/index.js或在 .claude/settings.json:
{
"mcpServers": {
"sports-hub": {
"command": "node",
"args": ["/absolute/path/to/mcp-sports-hub/dist/index.js"],
"env": {
"PANDASCORE_TOKEN": "your-token"
}
}
}
}提供商筛选
默认情况下,只有 自由预设 已加载(9个提供程序,约98个工具-不需要API密钥)。使用 SPORTS_HUB_PROVIDERS 要更改加载的内容,请执行以下操作:
# Default — free providers only (no config needed)
npx mcp-sports-hub
# Load ALL 29 providers (319 tools)
SPORTS_HUB_PROVIDERS=all npx mcp-sports-hub
# Use a preset
SPORTS_HUB_PROVIDERS=us-major npx mcp-sports-hub
# Pick specific providers
SPORTS_HUB_PROVIDERS=espn,nhl,odds npx mcp-sports-hub
# Exclude from all (prefix with -)
SPORTS_HUB_PROVIDERS=-sportsdata,-mma npx mcp-sports-hub预设
| 预设 | 提供者 | 工具 | 需要密钥吗? |
|---|---|---|---|
free (默认) | espn、nhl、mlb、f1、openf1、openliga、sportsdb、ncaa、sportsrc、lichess、chesscom、squiggle | ~109 | 否 |
all | 所有32个提供商 | 336 | 是(对于需要密钥的提供商) |
chess | 胸脯 | 14 | 否 |
us-major | espn、nhl、mlb、ncaa、cfbd、bdl、msf | ~79 | 一些 |
soccer | espn、apifootball、足球数据、体育僧侣、公开联赛、sportsrc | ~69 | 一些 |
f1 | f1,openf1 | 25 | 否 |
esports | pandascore | 14 | 是 |
odds | 赔率,oddsio,sgo | 29 | 是的 |
cricket | 板球,实体佝偻病 | 22 | 是 |
golf | 现场高尔夫,高尔夫球场 | 14 | 一些 |
缓存
默认情况下,所有GET响应都会在内存中缓存60秒。这可以防止重复呼叫和速率限制浪费。配置为:
SPORTS_HUB_CACHE_TTL=120 # seconds (0 to disable)在Claude桌面配置中:
"env": {
"SPORTS_HUB_PROVIDERS": "us-major",
"THE_ODDS_API_KEY": "your-key"
}工具命名
所有工具如下 {provider}_{action}:
espn_get_scoreboard — Live scores (ESPN)
nhl_get_standings — NHL standings
mlb_get_game_boxscore — MLB box score
f1_get_race_results — F1 results (1950+)
openf1_get_laps — F1 live telemetry
pandascore_get_lives — Live esports matches
apifootball_get_fixtures — Soccer fixtures (960+ leagues)
odds_get_odds — Betting odds (70+ sports)
sportsrc_get_xg_stats — Expected goals (xG)建筑
src/
├── index.ts # Imports + registers all 29 providers
├── shared/
│ └── http.ts # fetchJson, buildUrl, toolResult, errorResult
└── providers/
├── espn.ts # 10 tools — no key
├── nhl.ts # 13 tools — no key
├── mlb-stats.ts # 13 tools — no key
├── jolpica-f1.ts # 13 tools — no key
├── openf1.ts # 12 tools — no key
├── openligadb.ts # 10 tools — no key
├── golfcourse.ts # 6 tools — GOLFCOURSE_API_KEY
├── thesportsdb.ts # 13 tools — optional key
├── pandascore.ts # 14 tools — PANDASCORE_TOKEN
├── api-football.ts # 15 tools — API_FOOTBALL_KEY
├── api-sports.ts # 10 tools — API_SPORTS_KEY
├── api-tennis.ts # 12 tools — API_TENNIS_KEY
├── balldontlie.ts # 10 tools — BALLDONTLIE_API_KEY
├── cricketdata.ts # 10 tools — CRICKETDATA_API_KEY
├── entity-sport-cricket.ts # 12 tools — ENTITY_SPORT_KEY
├── football-data.ts # 11 tools — FOOTBALL_DATA_API_KEY
├── sportmonks.ts # 12 tools — SPORTMONKS_API_KEY
├── sportsdata-io.ts # 12 tools — SPORTSDATA_IO_KEY
├── the-odds-api.ts # 9 tools — THE_ODDS_API_KEY
├── odds-api-io.ts # 10 tools — ODDS_API_IO_KEY
├── sports-game-odds.ts # 10 tools — SPORTS_GAME_ODDS_KEY
├── fighting-tomatoes.ts # 8 tools — FIGHTING_TOMATOES_API_KEY
├── live-golf.ts # 8 tools — LIVE_GOLF_API_KEY
├── isportsapi.ts # 10 tools — ISPORTSAPI_KEY
├── sportdevs.ts # 12 tools — SPORTDEVS_API_KEY
├── mysportsfeeds.ts # 12 tools — MYSPORTSFEEDS_USER/PASS
├── sportsrc.ts # 7 tools — V1 free, V2 needs paid key (not exposed)
├── ncaa.ts # 8 tools — no key
├── cfbd.ts # 14 tools — CFBD_API_KEY
├── lichess.ts # 7 tools — no key
├── chess-com.ts # 7 tools — no key
└── squiggle.ts # 6 tools — no key每个提供商导出 register(server)。按键在呼叫时检查,而不是在启动时检查。
贡献
- 分叉存储库
- 创建
src/providers/my-api.ts出口register(server: McpServer) - 为工具名称添加前缀:
myapi_get_something - 导入+呼入
src/index.ts npm run build验证- 提交PR
许可证
麻省理工学院
