体育数据服务器

一个提供实时体育数据的服务器,支持多种体育项目和联赛,包括实时比分、新闻、球队信息和排名等功能。

  • by ShawnDM
  • JavaScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 ShawnDM/espn-mcp

使用说明

体育MCP服务器

一种模型上下文协议(MCP)服务器,可从ESPN的API端点访问现场体育数据。该服务器允许AI代理检索实时体育比分、新闻、球队信息、比赛细节以及多个体育和联赛的排名。

特性

  • 现场体育比分:获取实时分数和游戏信息
  • 体育新闻:获取最新新闻和更新
  • 团队信息:检索详细的团队数据和统计数据
  • 游戏详情:获取全面的游戏摘要和统计数据
  • 排名:访问大学体育排名
  • 多运动支持:足球、篮球、棒球、曲棍球和足球

支持的体育和联赛

足球

  • 大学橄榄球: college
  • 国家橄榄球联盟: nfl

篮球

  • 美国职业篮球联赛: nba
  • 美国女子职业篮球联盟: wnba
  • 男子大学篮球: mens-college
  • 女子大学篮球: womens-college

棒球

  • 美国职业棒球大联盟: mlb
  • 大学棒球: college

曲棍球

  • 国家冰球联盟: nhl

足球

  • 英超联赛: eng.1
  • 英里: usa.1
  • 西甲联赛: esp.1
  • 德甲: ger.1
  • 联赛 1: fra.1
  • 意甲联赛: ita.1

可用工具

1. get_sports_scores

获取特定运动和联赛的实时比分和比赛信息。

参数:

  • sport (必填):运动(足球、篮球、棒球、曲棍球、足球)
  • league (必填):运动中的联盟
  • date (可选):YYYYMMDD格式的日期(默认为今天)

例子:

{
  "sport": "football",
  "league": "nfl",
  "date": "20241201"
}

2. get_sports_news

获取特定运动和联赛的最新消息。

参数:

  • sport (必填):体育
  • league (必填):运动中的联盟

例子:

{
  "sport": "basketball",
  "league": "nba"
}

3. get_team_info

获取特定团队的详细信息。

参数:

  • sport (必填):体育
  • league (必填):联盟
  • team (必填):团队标识符或缩写

例子:

{
  "sport": "football",
  "league": "nfl",
  "team": "ne"
}

4. get_game_details

获取特定游戏的详细信息。

参数:

  • sport (必填):体育
  • league (必填):联盟
  • gameId (必填):唯一游戏标识符

例子:

{
  "sport": "basketball",
  "league": "nba",
  "gameId": "401585401"
}

5. get_rankings

获取大学体育排名。

参数:

  • sport (必填):运动(足球、篮球)
  • league (必填):大学联盟(大学、男子学院、女子学院)

例子:

{
  "sport": "football",
  "league": "college"
}

6. get_available_sports

获取所有可用运动和联赛的列表。

参数: 无

安装和设置

先决条件

  • Node.js 18.0.0或更高版本
  • npm或纱线

地方发展

  1. 克隆存储库:

    git clone https://github.com/ShawnDM/espn-mcp.git
    cd espn-mcp
    
  2. 安装依赖项:

    npm install
    
  3. 构建项目:

    npm run build
    
  4. 运行服务器:

    npm start
    

发展模式

npm run dev

部署到Smithery.ai

此MCP服务器已配置为部署在 Smithery.aiThe smithery.json 配置文件包含平台所需的所有元数据。

部署步骤:

  1. 将代码推送到GitHub
  2. 将您的存储库连接到Smithery.ai
  3. 平台将自动检测MCP服务器配置
  4. 部署并开始使用服务器

使用的API端点

此服务器与ESPN未记录的API端点集成:

  • 分数: http://site.api.espn.com/apis/site/v2/sports/{sport}/{league}/scoreboard
  • 新闻: http://site.api.espn.com/apis/site/v2/sports/{sport}/{league}/news
  • 团队: http://site.api.espn.com/apis/site/v2/sports/{sport}/{league}/teams/{team}
  • 游戏详情: http://site.api.espn.com/apis/site/v2/sports/{sport}/{league}/summary?event={gameId}
  • 排名: http://site.api.espn.com/apis/site/v2/sports/{sport}/{league}/rankings

错误处理

该服务器包括全面的错误处理功能,用于:

  • 无效的运动/联赛组合
  • 网络超时和API故障
  • 请求格式错误
  • 缺少必要参数

贡献

  1. 分叉存储库
  2. 创建要素分支
  3. 进行更改
  4. 如果适用,添加测试
  5. 提交拉取请求

许可证

MIT许可证-有关详细信息,请参阅许可证文件。

致谢

  • ESPN提供体育数据API
  • MCP SDK团队为优秀的框架
  • 发现ESPN API端点的社区贡献者

支持

对于问题和疑问:

  • 在GitHub上创建问题
  • 查看中的ESPN API文档 espn-api-docs/
  • 查阅MCP文档,网址为 模型上下文协议.io