README
🚀 BALLDONTLIE体育MCP服务器
BALLDONTLIE体育MCP服务器是一个模型上下文协议(MCP)服务器,它提供对BALLDONTLIE API中全面体育数据的访问。这些数据涵盖了NBA、WNBA、NFL、MLB、EPL、NHL、NCAAF、NCAAB、MMA、2026年国际足联世界杯、西甲、意甲、欧冠、德甲和法甲等赛事的统计数据、球员信息、比赛数据等。
✨ 主要特性
- 200多个体育端点:可完全访问所有BALLDONTLIE API端点。
- 15项主要体育赛事/联赛:包括NBA、WNBA、NFL、MLB、EPL、NHL、NCAAF、NCAAB、MMA、2026年国际足联世界杯、西甲、意甲、欧冠、德甲和法甲。
- 全面的数据:涵盖球队、球员、比赛、统计数据、排名、伤病情况、博彩赔率和高级分析等。
- 身份验证:可无缝将API密钥转发到后端。
- 分页功能:完全支持基于游标(cursor)的分页。
- 错误处理:能正确转发和处理错误。
- TypeScript支持:具备完整的类型安全和智能感知(IntelliSense)支持。
📦 安装指南
npm install @balldontlie/mcp-server
🚀 快速开始
1. 获取API密钥
在BALLDONTLIE上注册,以获取免费的API密钥。
2. 配置MCP客户端
选项A:使用托管的远程服务器(推荐)
将以下配置添加到你的MCP客户端配置文件(例如Claude Desktop)中,以使用托管服务器:
{
"mcpServers": {
"balldontlie-api": {
"url": "https://mcp.balldontlie.io/mcp",
"transport": "http",
"headers": {
"Authorization": "<YOUR_BALLDONTLIE_API_KEY>"
}
}
}
}
请将<YOUR_BALLDONTLIE_API_KEY>替换为你从BALLDONTLIE获取的实际API密钥。
选项B:从源代码运行
克隆并从源代码运行:
git clone https://github.com/balldontlie-api/mcp-server.git
cd mcp-server
npm install
npm run build
npm start
配置你的MCP客户端以连接到本地服务器:
{
"mcpServers": {
"balldontlie-api": {
"url": "http://localhost:3000/mcp",
"transport": "http",
"headers": {
"Authorization": "<YOUR_BALLDONTLIE_API_KEY>"
}
}
}
}
3. 在你的MCP客户端中使用
服务器将自动提供所有可用的工具。你可以向你的AI助手提出以下问题:
- "获取当前NBA的排名情况"
- "展示勒布朗·詹姆斯的赛季数据"
- "今天有哪些NFL比赛?"
- "获取曼联最近的英超比赛信息"
- "展示阿贾·威尔逊的WNBA赛季数据"
- "当前WNBA的排名如何?"
- "展示NCAAB锦标赛的赛程表"
- "获取今晚NBA比赛的博彩赔率"
📚 详细文档
环境变量
| 属性 | 详情 |
|------|------|
| 端口(PORT) | 本地运行时的服务器端口,默认值为3000 |
| 后端API URL(BACKEND_API_URL) | BALLDONTLIE API的基础URL,默认值为https://api.balldontlie.io |
| API超时时间(API_TIMEOUT) | 请求超时时间(毫秒),默认值为30000 |
| 日志级别(LOG_LEVEL) | 日志记录级别(错误、警告、信息、调试),默认值为info |
| 节点环境(NODE_ENV) | 环境(开发、生产、测试),默认值为development |
| 启用调试(ENABLE_DEBUG) | 是否启用调试日志记录,默认值为false |
| 启用跟踪(ENABLE_TRACING) | 是否启用DataDog APM跟踪(需要设置DD_AGENT_HOST),默认值为false |
| DataDog代理主机名(DD_AGENT_HOST) | 用于APM跟踪的DataDog代理主机名 |
| 启用DataDog分析(DD_PROFILING_ENABLED) | 是否启用DataDog分析,默认值为false |
| 服务版本(SERVICE_VERSION) | 用于跟踪的服务版本,默认值为1.0.0 |
可用工具
NBA(23个工具)
| 工具 | 描述 | 参数 |
| --------------------------- | --------------------------------- | ---------------------------------------------------------------------------------- |
| nba_get_teams | 获取所有NBA球队 | division(分区), conference(联盟) |
| nba_get_team_by_id | 获取特定的NBA球队 | id(必需) |
| nba_get_players | 按筛选条件获取NBA球员 | search(搜索关键词), first_name(名), last_name(姓), team_ids(球队ID), player_ids(球员ID), 分页参数 |
| nba_get_player_by_id | 获取特定的NBA球员 | id(必需) |
| nba_get_active_players | 获取现役NBA球员 | 与nba_get_players参数相同 |
| nba_get_games | 获取NBA比赛 | dates(日期), seasons(赛季), team_ids(球队ID), postseason(季后赛), start_date(开始日期), end_date(结束日期), 分页参数 |
| nba_get_game_by_id | 获取特定的NBA比赛 | id(必需) |
| nba_get_stats | 获取NBA统计数据 | dates(日期), seasons(赛季), team_ids(球队ID), player_ids(球员ID), game_ids(比赛ID), postseason(季后赛), 分页参数 |
| nba_get_season_averages | 获取赛季平均数据 | season(赛季,必需), category(类别,必需), type(类型,必需), player_ids(球员ID), season_type(赛季类型) |
| nba_get_advanced_stats | 获取高级统计数据 | 与nba_get_stats参数相同 |
| nba_get_box_scores | 获取比赛数据统计 | dates(日期), seasons(赛季), team_ids(球队ID), game_ids(比赛ID), postseason(季后赛), 分页参数 |
| nba_get_live_box_scores | 获取实时比赛数据统计 | 与nba_get_box_scores参数相同 |
| nba_get_standings | 获取球队排名 | season(赛季), conference(联盟), division(分区) |
| nba_get_leaders | 获取数据领先者 | season(赛季), stat_type(统计类型), per_page(每页数量) |
| nba_get_player_injuries | 获取球员伤病情况 | player_ids(球员ID), team_ids(球队ID), 分页参数 |
| nba_get_betting_odds | 获取比赛博彩赔率 | dates(日期), game_ids(比赛ID), 分页参数 |
| nba_get_lineups | 获取比赛阵容 | game_ids(比赛ID,必需), 分页参数 |
| nba_get_player_props | 获取球员博彩赔率 | game_id(比赛ID,必需), player_id(球员ID), prop_type(赔率类型) |
| nba_get_contracts_by_team | 按球队获取球员合同 | team_id(球队ID,必需), season(赛季) |
| nba_get_contracts_by_player | 按球员获取合同 | player_id(球员ID,必需), seasons(赛季), 分页参数 |
| nba_get_contracts_aggregate | 获取汇总的合同数据 | player_id(球员ID,必需) |
| nba_get_plays | 获取逐回合比赛数据 | game_id(比赛ID,必需) |
NFL(17个工具)
| 工具 | 描述 | 参数 |
| ---------------------------------- | ---------------------------- | ------------------------------------------------------------------------------------------- |
| nfl_get_teams | 获取所有NFL球队 | division(分区), conference(联盟) |
| nfl_get_team_by_id | 获取特定的NFL球队 | id(必需) |
| nfl_get_players | 获取NFL球员 | search(搜索关键词), first_name(名), last_name(姓), team_ids(球队ID), player_ids(球员ID), position(位置), 分页参数 |
| nfl_get_player_by_id | 获取特定的NFL球员 | id(必需) |
| nfl_get_active_players | 获取现役NFL球员 | 与nfl_get_players参数相同 |
| nfl_get_games | 获取NFL比赛 | dates(日期), seasons(赛季), team_ids(球队ID), weeks(周数), postseason(季后赛), start_date(开始日期), end_date(结束日期), 分页参数 |
| nfl_get_game_by_id | 获取特定的NFL比赛 | id(必需) |
| nfl_get_stats | 获取NFL统计数据 | dates(日期), seasons(赛季), team_ids(球队ID), player_ids(球员ID), game_ids(比赛ID), weeks(周数), postseason(季后赛), 分页参数 |
| nfl_get_season_stats | 获取赛季统计数据 | season(赛季), player_ids(球员ID), team_ids(球队ID), postseason(季后赛), 分页参数 |
| nfl_get_standings | 获取球队排名 | season(赛季), conference(联盟), division(分区) |
| nfl_get_player_injuries | 获取球员伤病情况 | player_ids(球员ID), team_ids(球队ID), 分页参数 |
| nfl_get_advanced_rushing_stats | 获取高级冲球统计数据 | season(赛季), week(周数), player_ids(球员ID), team_ids(球队ID), position(位置), 分页参数 |
| nfl_get_advanced_passing_stats | 获取高级传球统计数据 | 与冲球统计参数相同 |
| nfl_get_advanced_receiving_stats | 获取高级接球统计数据 | 与冲球统计参数相同 |
| nfl_get_betting_odds | 获取比赛博彩赔率 | season(赛季), week(周数), game_ids(比赛ID), 分页参数 |
| nfl_get_team_roster | 获取球队阵容/深度表 | id(球队ID,必需), season(赛季) |
| nfl_get_player_props | 获取球员博彩赔率 | game_id(比赛ID,必需), player_id(球员ID), prop_type(赔率类型), vendors(博彩公司) |
MLB(12个工具)
| 工具 | 描述 | 参数 |
| --------------------------- | ----------------------- | ----------------------------------------------------------------------------------------------- |
| mlb_get_teams | 获取所有MLB球队 | division(分区), league(联盟) |
| mlb_get_team_by_id | 获取特定的MLB球队 | id(必需) |
| mlb_get_players | 获取MLB球员 | search(搜索关键词), first_name(名), last_name(姓), team_ids(球队ID), player_ids(球员ID), position(位置), active(是否现役), 分页参数 |
| mlb_get_player_by_id | 获取特定的MLB球员 | id(必需) |
| mlb_get_active_players | 获取现役MLB球员 | 与mlb_get_players参数相同 |
| mlb_get_games | 获取MLB比赛 | dates(日期), seasons(赛季), team_ids(球队ID), postseason(季后赛), start_date(开始日期), end_date(结束日期), 分页参数 |
| mlb_get_game_by_id | 获取特定的MLB比赛 | id(必需) |
| mlb_get_stats | 获取MLB统计数据 | dates(日期), seasons(赛季), team_ids(球队ID), player_ids(球员ID), game_ids(比赛ID), postseason(季后赛), 分页参数 |
| mlb_get_season_stats | 获取赛季统计数据 | season(赛季), player_ids(球员ID), team_ids(球队ID), postseason(季后赛), 分页参数 |
| mlb_get_team_season_stats | 获取球队赛季统计数据 | season(赛季), team_ids(球队ID), postseason(季后赛), 分页参数 |
| mlb_get_standings | 获取球队排名 | season(赛季), league(联盟), division(分区) |
| mlb_get_player_injuries | 获取球员伤病情况 | player_ids(球员ID), team_ids(球队ID), 分页参数 |
EPL(17个工具)
| 工具 | 描述 | 参数 |
| ------------------------------ | ---------------------------- | ----------------------------------------------------------------------------- |
| epl_get_teams | 获取所有英超球队 | 分页参数 |
| epl_get_team_by_id | 获取特定的英超球队 | id(必需) |
| epl_get_team_players | 获取球队球员 | id(球队ID,必需), 分页参数 |
| epl_get_team_season_stats | 获取球队赛季统计数据 | id(球队ID,必需), season(赛季), stat_types(统计类型) |
| epl_get_team_stats_leaders | 获取球队数据领先者 | season(赛季), stat_type(统计类型), per_page(每页数量) |
| epl_get_standings | 获取英超排名 | season(赛季) |
| epl_get_players | 获取英超球员 | search(搜索关键词), team_ids(球队ID), player_ids(球员ID), position(位置), 分页参数 |
| epl_get_player_by_id | 获取特定的英超球员 | id(必需) |
| epl_get_player_season_stats | 获取球员赛季统计数据 | id(球员ID,必需), season(赛季), stat_types(统计类型) |
| epl_get_player_stats_leaders | 获取球员数据领先者 | season(赛季), stat_type(统计类型), per_page(每页数量) |
| epl_get_games | 获取英超比赛 | dates(日期), seasons(赛季), team_ids(球队ID), weeks(周数), start_date(开始日期), end_date(结束日期), 分页参数 |
| epl_get_game_by_id | 获取特定的英超比赛 | id(必需) |
| epl_get_game_lineups | 获取比赛阵容 | id(比赛ID,必需) |
| epl_get_game_goals | 获取比赛进球情况 | id(比赛ID,必需) |
| epl_get_game_team_stats | 获取比赛球队统计数据 | id(比赛ID,必需) |
| epl_get_game_player_stats | 获取比赛球员统计数据 | id(比赛ID,必需) |
| epl_get_betting_odds | 获取比赛博彩赔率 | season(赛季), week(周数), game_ids(比赛ID), 分页参数 |
| epl_get_player_props | 获取球员博彩赔率 | game_id(比赛ID,必需), player_id(球员ID), prop_type(赔率类型) |
NHL(14个工具)
| 工具 | 描述 | 参数 |
| ------------------------------ | ---------------------------- | ----------------------------------------------------------------------------------- |
| nhl_get_teams | 获取所有NHL球队 | conference(联盟), division(分区), 分页参数 |
| nhl_get_team_by_id | 获取特定的NHL球队 | id(必需) |
| nhl_get_team_season_stats | 获取球队赛季统计数据 | id(球队ID,必需), season(赛季) |
| nhl_get_team_stats_leaders | 获取球队数据领先者 | season(赛季), stat_type(统计类型), per_page(每页数量) |
| nhl_get_players | 获取NHL球员 | search(搜索关键词), team_ids(球队ID), player_ids(球员ID), position(位置), 分页参数 |
| nhl_get_player_by_id | 获取特定的NHL球员 | id(必需) |
| nhl_get_player_season_stats | 获取球员赛季统计数据 | id(球员ID,必需), season(赛季) |
| nhl_get_player_stats_leaders | 获取球员数据领先者 | season(赛季), stat_type(统计类型), per_page(每页数量) |
| nhl_get_games | 获取NHL比赛 | dates(日期), seasons(赛季), team_ids(球队ID), season_type(赛季类型), start_date(开始日期), end_date(结束日期), 分页参数 |
| nhl_get_game_by_id | 获取特定的NHL比赛 | id(必需) |
| nhl_get_standings | 获取NHL排名 | season(赛季), conference(联盟), division(分区) |
| nhl_get_box_scores | 获取NHL比赛数据统计 | dates(日期), seasons(赛季), team_ids(球队ID), game_ids(比赛ID), season_type(赛季类型), 分页参数 |
| nhl_get_betting_odds | 获取比赛博彩赔率 | dates(日期), game_ids(比赛ID), 分页参数 |
| nhl_get_player_props | 获取球员博彩赔率 | game_id(比赛ID,必需), player_id(球员ID), prop_type(赔率类型) |
WNBA(14个工具)
| 工具 | 描述 | 参数 |
| ------------------------------- | ---------------------------- | -------------------------------------------------------------------------------- |
| wnba_get_teams | 获取所有WNBA球队 | conference(联盟) |
| wnba_get_team_by_id | 获取特定的WNBA球队 | id(必需) |
| wnba_get_players | 获取WNBA球员 | search(搜索关键词), first_name(名), last_name(姓), team_ids(球队ID), player_ids(球员ID), 分页参数 |
| wnba_get_player_by_id | 获取特定的WNBA球员 | id(必需) |
| wnba_get_active_players | 获取现役WNBA球员 | 与wnba_get_players参数相同 |
| wnba_get_games | 获取WNBA比赛 | dates(日期), seasons(赛季), team_ids(球队ID), season_type(赛季类型), start_date(开始日期), end_date(结束日期), 分页参数 |
| wnba_get_game_by_id | 获取特定的WNBA比赛 | id(必需) |
| wnba_get_player_stats | 获取球员比赛统计数据 | game_ids(比赛ID), dates(日期), seasons(赛季), player_ids(球员ID), team_ids(球队ID), 分页参数 |
| wnba_get_team_stats | 获取球队比赛统计数据 | game_ids(比赛ID), dates(日期), seasons(赛季), team_ids(球队ID), 分页参数 |
| wnba_get_player_season_stats | 获取球员赛季统计数据 | player_ids(球员ID), team_ids(球队ID), season(赛季), season_type(赛季类型), 分页参数 |
| wnba_get_team_season_stats | 获取球队赛季统计数据 | team_ids(球队ID), season(赛季), season_type(赛季类型), 分页参数 |
| wnba_get_standings | 获取WNBA排名 | season(赛季), conference(联盟) |
| wnba_get_player_injuries | 获取球员伤病情况 | player_ids(球员ID), team_ids(球队ID), 分页参数 |
| wnba_get_plays | 获取逐回合比赛数据 | game_id(比赛ID,必需) |
NCAAF(17个工具)
| 工具 | 描述 | 参数 |
| -------------------------------- | ---------------------------- | ------------------------------------------------------------------------------------------- |
| ncaaf_get_conferences | 获取所有NCAAF联盟 | 无 |
| ncaaf_get_conference_by_id | 获取特定的NCAAF联盟 | id(必需) |
| ncaaf_get_teams | 获取所有NCAAF球队 | conference(联盟), 分页参数 |
| ncaaf_get_team_by_id | 获取特定的NCAAF球队 | id(必需) |
| ncaaf_get_players | 获取NCAAF球员 | search(搜索关键词), first_name(名), last_name(姓), team_ids(球队ID), player_ids(球员ID), position(位置), 分页参数 |
| ncaaf_get_active_players | 获取现役NCAAF球员 | 与ncaaf_get_players参数相同 |
| ncaaf_get_player_by_id | 获取特定的NCAAF球员 | id(必需) |
| ncaaf_get_standings | 获取NCAAF排名 | season(赛季), conference_id(联盟ID), 分页参数 |
| ncaaf_get_games | 获取NCAAF比赛 | dates(日期), seasons(赛季), team_ids(球队ID), weeks(周数), start_date(开始日期), end_date(结束日期), 分页参数 |
| ncaaf_get_game_by_id | 获取特定的NCAAF比赛 | id(必需) |
| ncaaf_get_rankings | 获取NCAAF排名 | season(赛季), week(周数), 分页参数 |
| ncaaf_get_plays | 获取逐回合比赛数据 | game_id(比赛ID,必需) |
| ncaaf_get_player_stats | 获取球员比赛统计数据 | game_ids(比赛ID), dates(日期), seasons(赛季), player_ids(球员ID), team_ids(球队ID), weeks(周数), 分页参数 |
| ncaaf_get_team_stats | 获取球队比赛统计数据 | game_ids(比赛ID), dates(日期), seasons(赛季), team_ids(球队ID), weeks(周数), 分页参数 |
| ncaaf_get_player_season_stats | 获取球员赛季统计数据 | season(赛季,必需), player_ids(球员ID), team_ids(球队ID), 分页参数 |
| ncaaf_get_team_season_stats | 获取球队赛季统计数据 | season(赛季,必需), team_ids(球队ID), 分页参数 |
| ncaaf_get_betting_odds | 获取比赛博彩赔率 | season(赛季), week(周数), game_ids(比赛ID), 分页参数 |
NCAAB(18个工具)
| 工具 | 描述 | 参数 |
| --------------------------------- | ---------------------------- | ------------------------------------------------------------------------------------------- |
| ncaab_get_conferences | 获取所有NCAAB联盟 | 无 |
| ncaab_get_conference_by_id | 获取特定的NCAAB联盟 | id(必需) |
| ncaab_get_teams | 获取所有NCAAB球队 | conference(联盟), 分页参数 |
| ncaab_get_team_by_id | 获取特定的NCAAB球队 | id(必需) |
| ncaab_get_players | 获取NCAAB球员 | search(搜索关键词), first_name(名), last_name(姓), team_ids(球队ID), player_ids(球员ID), position(位置), 分页参数 |
| ncaab_get_player_by_id | 获取特定的NCAAB球员 | id(必需) |
| ncaab_get_active_players | 获取现役NCAAB球员 | 与ncaab_get_players参数相同 |
| ncaab_get_standings | 获取NCAAB排名 | season(赛季), conference_id(联盟ID), 分页参数 |
| ncaab_get_games | 获取NCAAB比赛 | dates(日期), seasons(赛季), team_ids(球队ID), weeks(周数), start_date(开始日期), end_date(结束日期), 分页参数 |
| ncaab_get_game_by_id | 获取特定的NCAAB比赛 | id(必需) |
| ncaab_get_rankings | 获取NCAAB排名 | season(赛季), week(周数), 分页参数 |
| ncaab_get_plays | 获取逐回合比赛数据 | game_id(比赛ID,必需) |
| ncaab_get_player_stats | 获取球员比赛统计数据 | game_ids(比赛ID), dates(日期), seasons(赛季), player_ids(球员ID), team_ids(球队ID), weeks(周数), 分页参数 |
| ncaab_get_team_stats | 获取球队比赛统计数据 | game_ids(比赛ID), dates(日期), seasons(赛季), team_ids(球队ID), weeks(周数), 分页参数 |
| ncaab_get_player_season_stats | 获取球员赛季统计数据 | season(赛季,必需), player_ids(球员ID), team_ids(球队ID), 分页参数 |
| ncaab_get_team_season_stats | 获取球队赛季统计数据 | season(赛季,必需), team_ids(球队ID), 分页参数 |
| ncaab_get_brackets | 获取锦标赛赛程表 | season(赛季), 分页参数 |
| ncaab_get_betting_odds | 获取比赛博彩赔率 | dates(日期), game_ids(比赛ID), 分页参数 |
MMA(12个工具)
| 工具 | 描述 | 参数 |
| --------------------------- | ------------------------------------- | ---------------------------------------------------------------- |
| mma_get_leagues | 获取所有MMA联盟(如UFC等) | 无 |
| mma_get_league_by_id | 获取特定的MMA联盟 | id(必需) |
| mma_get_events | 获取MMA赛事 | date(日期), year(年份), 分页参数 |
| mma_get_event_by_id | 获取特定的MMA赛事 | id(必需) |
| mma_get_fighters | 获取MMA格斗选手 | search(搜索关键词), fighter_ids(选手ID), 分页参数 |
| mma_get_fighter_by_id | 获取特定的MMA格斗选手 | id(必需) |
| mma_get_fights | 获取MMA比赛 | fight_ids(比赛ID), fighter_ids(选手ID), event_ids(赛事ID), 分页参数 |
| mma_get_fight_by_id | 获取特定的MMA比赛 | id(必需) |
| mma_get_rankings | 获取MMA格斗选手排名 | 无 |
| mma_get_fight_stats | 获取详细的比赛统计数据 | fight_ids(比赛ID), fighter_ids(选手ID), event_ids(赛事ID), 分页参数 |
| mma_get_fight_stat_by_id | 获取特定的比赛统计数据 | id(必需) |
| mma_get_betting_odds | 获取MMA博彩赔率 | event_id(赛事ID), fight_id(比赛ID) |
2026年国际足联世界杯(6个工具)
| 工具 | 描述 | 参数 |
| --------------------------- | --------------------------------------------------------- | ---------- |
| fifa_get_teams | 获取所有2026年国际足联世界杯参赛国家 | 无 |
| fifa_get_stadiums | 获取所有2026年国际足联世界杯主办体育场 | 无 |
| fifa_get_group_standings | 获取小组赛排名(需要ALL - STAR级别) | 无 |
| fifa_get_matches | 获取所有比赛(包括小组赛和淘汰赛,需要GOAT级别) | 无 |
| fifa_get_betting_odds | 获取比赛博彩赔率(需要GOAT级别) | 无 |
| fifa_get_futures_odds | 获取未来博彩赔率(如锦标赛冠军等,需要GOAT级别) | 无 |
西甲(11个工具)
| 工具 | 描述 | 参数 |
| --------------------------------- | ----------------------------------------- | ------------------------------------------------------------------ |
| laliga_get_teams | 获取所有西甲球队 | season(赛季,必需) |
| laliga_get_rosters | 获取球队阵容 | team_id(球队ID,必需), season(赛季), 分页参数 |
| laliga_get_players | 获取西甲球员 | season(赛季,必需), team_ids(球队ID), search(搜索关键词), 分页参数 |
| laliga_get_standings | 获取西甲排名 | season(赛季,必需) |
| laliga_get_matches | 获取西甲比赛 | season(赛季), team_ids(球队ID), dates(日期), start_date(开始日期), end_date(结束日期), 分页参数 |
| laliga_get_match_events | 获取比赛事件(进球、黄牌等) | match_ids(比赛ID), 分页参数 |
| laliga_get_match_lineups | 获取比赛阵容 | match_ids(比赛ID), 分页参数 |
| laliga_get_player_match_stats | 获取球员比赛统计数据 | match_ids(比赛ID), player_ids(球员ID), 分页参数 |
| laliga_get_team_match_stats | 获取球队比赛统计数据 | match_ids(比赛ID), team_ids(球队ID), 分页参数 |
| laliga_get_betting_odds | 获取比赛博彩赔率 | match_ids(比赛ID), dates(日期), 分页参数 |
| laliga_get_player_props | 获取球员博彩赔率 | match_id(比赛ID,必需), player_id(球员ID), prop_type(赔率类型) |
意甲(11个工具)
| 工具 | 描述 | 参数 |
| --------------------------------- | ----------------------------------------- | ------------------------------------------------------------------ |
| seriea_get_teams | 获取所有意甲球队 | season(赛季,必需) |
| seriea_get_rosters | 获取球队阵容 | team_id(球队ID,必需), season(赛季), 分页参数 |
| seriea_get_players | 获取意甲球员 | season(赛季,必需), team_ids(球队ID), search(搜索关键词), 分页参数 |
| seriea_get_standings | 获取意甲排名 | season(赛季,必需) |
| seriea_get_matches | 获取意甲比赛 | season(赛季), team_ids(球队ID), dates(日期), start_date(开始日期), end_date(结束日期), 分页参数 |
| seriea_get_match_events | 获取比赛事件(进球、黄牌等) | match_ids(比赛ID), 分页参数 |
| seriea_get_match_lineups | 获取比赛阵容 | match_ids(比赛ID), 分页参数 |
| seriea_get_player_match_stats | 获取球员比赛统计数据 | match_ids(比赛ID), player_ids(球员ID), 分页参数 |
| seriea_get_team_match_stats | 获取球队比赛统计数据 | match_ids(比赛ID), team_ids(球队ID), 分页参数 |
| seriea_get_betting_odds | 获取比赛博彩赔率 | match_ids(比赛ID), dates(日期), 分页参数 |
| seriea_get_player_props | 获取球员博彩赔率 | match_id(比赛ID,必需), player_id(球员ID), prop_type(赔率类型) |
欧冠(12个工具)
| 工具 | 描述 | 参数 |
| --------------------------------- | ----------------------------------------- | ------------------------------------------------------------------ |
| ucl_get_teams | 获取所有欧冠球队 | season(赛季,必需) |
| ucl_get_rosters | 获取球队阵容 | team_id(球队ID,必需), season(赛季), 分页参数 |
| ucl_get_players | 获取欧冠球员 | season(赛季,必需), team_ids(球队ID), search(搜索关键词), 分页参数 |
| ucl_get_standings | 获取欧冠排名 | season(赛季,必需) |
| ucl_get_matches | 获取欧冠比赛 | season(赛季), team_ids(球队ID), dates(日期), start_date(开始日期), end_date(结束日期), 分页参数 |
| ucl_get_match_events | 获取比赛事件(进球、黄牌等) | match_ids(比赛ID), 分页参数 |
| ucl_get_match_lineups | 获取比赛阵容 | match_ids(比赛ID), 分页参数 |
| ucl_get_player_match_stats | 获取球员比赛统计数据 | match_ids(比赛ID), player_ids(球员ID), 分页参数 |
| ucl_get_team_match_stats | 获取球队比赛统计数据 | match_ids(比赛ID), team_ids(球队ID), 分页参数 |
| ucl_get_betting_odds | 获取比赛博彩赔率 | match_ids(比赛ID), dates(日期), 分页参数 |
| ucl_get_player_props | 获取球员博彩赔率 | match_id(比赛ID,必需), player_id(球员ID), prop_type(赔率类型) |
| ucl_get_futures_odds | 获取未来博彩赔率 | 无 |
德甲(11个工具)
| 工具 | 描述 | 参数 |
| ----------------------------------- | ----------------------------------------- | ------------------------------------------------------------------ |
| bundesliga_get_teams | 获取所有德甲球队 | season(赛季,必需) |
| bundesliga_get_rosters | 获取球队阵容 | team_id(球队ID,必需), season(赛季), 分页参数 |
| bundesliga_get_players | 获取德甲球员 | season(赛季,必需), team_ids(球队ID), search(搜索关键词), 分页参数 |
| bundesliga_get_standings | 获取德甲排名 | season(赛季,必需) |
| bundesliga_get_matches | 获取德甲比赛 | season(赛季), team_ids(球队ID), dates(日期), start_date(开始日期), end_date(结束日期), 分页参数 |
| bundesliga_get_match_events | 获取比赛事件(进球、黄牌等) | match_ids(比赛ID), 分页参数 |
| bundesliga_get_match_lineups | 获取比赛阵容 | match_ids(比赛ID), 分页参数 |
| bundesliga_get_player_match_stats | 获取球员比赛统计数据 | match_ids(比赛ID), player_ids(球员ID), 分页参数 |
| bundesliga_get_team_match_stats | 获取球队比赛统计数据 | match_ids(比赛ID), team_ids(球队ID), 分页参数 |
| bundesliga_get_betting_odds | 获取比赛博彩赔率 | match_ids(比赛ID), dates(日期), 分页参数 |
| bundesliga_get_player_props | 获取球员博彩赔率 | match_id(比赛ID,必需), player_id(球员ID), prop_type(赔率类型) |
法甲(11个工具)
| 工具 | 描述 | 参数 |
| --------------------------------- | ----------------------------------------- | ------------------------------------------------------------------ |
| ligue1_get_teams | 获取所有法甲球队 | season(赛季,必需) |
| ligue1_get_rosters | 获取球队阵容 | team_id(球队ID,必需), season(赛季), 分页参数 |
| ligue1_get_players | 获取法甲球员 | season(赛季,必需), team_ids(球队ID), search(搜索关键词), 分页参数 |
| ligue1_get_standings | 获取法甲排名 | season(赛季,必需) |
| ligue1_get_matches | 获取法甲比赛 | season(赛季), team_ids(球队ID), dates(日期), start_date(开始日期), end_date(结束日期), 分页参数 |
| ligue1_get_match_events | 获取比赛事件(进球、黄牌等) | match_ids(比赛ID), 分页参数 |
| ligue1_get_match_lineups | 获取比赛阵容 | match_ids(比赛ID), 分页参数 |
| ligue1_get_player_match_stats | 获取球员比赛统计数据 | match_ids(比赛ID), player_ids(球员ID), 分页参数 |
| ligue1_get_team_match_stats | 获取球队比赛统计数据 | match_ids(比赛ID), team_ids(球队ID), 分页参数 |
| ligue1_get_betting_odds | 获取比赛博彩赔率 | match_ids(比赛ID), dates(日期), 分页参数 |
| ligue1_get_player_props | 获取球员博彩赔率 | match_id(比赛ID,必需), player_id(球员ID), prop_type(赔率类型) |
身份验证
服务器会将授权头信息转发到BALLDONTLIE API。你的MCP客户端应在请求中包含API密钥:
Authorization: YOUR_API_KEY
错误处理
服务器提供详细的错误信息:
- 身份验证错误(401):缺少或无效的API密钥。
- 授权错误(403):访问级别不足。
- 验证错误(400):无效的参数。
- 限速错误(429):请求速率超过限制。
- 服务器错误(5xx):后端API出现问题。
开发
# 克隆并安装依赖
git clone <repository>
cd mcp-server
npm install
# 构建项目
npm run build
# 在开发模式下运行
npm run dev
# 清理构建文件
npm run clean
API层级
BALLDONTLIE提供不同的访问层级:
- 免费版:基本端点(球队、球员、比赛)。
- 全明星版(每月9.99美元):包括统计数据、伤病情况、排名等。
- 传奇版(每月39.99美元):全面访问,包括高级统计数据、比赛数据统计、博彩赔率等。
支持
📄 许可证
本项目采用MIT许可证。
Scan to join WeChat group