Token导航 LogoToken导航TokenDH.com
mlb MCP server logo
数据服务stdio官方级别未说明来源级核验

mlb MCP server

MCP Server

一个通过MLB Stats API提供全面MLB统计数据和数据的模型上下文协议(MCP)服务器,支持命令行和基于Web的Streamlit聊天界面。

工具数

15

提示词数

0

GitHub Stars

0

资源数

0
PythonClaude数据分析Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

hfranyie

提供方

hfranyie

最后核验

2026/5/17 20:22

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uv run mcp run mlb_mcp_server.py

详细介绍

MLB MCP服务器

模型上下文协议(MCP)服务器,通过MLB Stats API提供全面的MLB统计和数据。该服务器提供命令行界面和基于web的Streamlit聊天界面,用于与MLB数据交互。

🖥️ 用户界面预览

以下是来自 MLB经纪人聊天界面 显示了由MCP服务器和基岩规划师提供支持的真实交互和分析。

1.️⃣ 游戏日程查询

MLB Agent - Game Schedule Query *经纪人确定了即将到来的蓝鸟队和道奇队之间的世界大赛第五场比赛,包括场地、状态和可能的投手。*

______________________________________________________________________

2.️⃣ 球员表现分析

MLB Agent - Player Performance Analysis *该代理检索Vladimir Guerrero Jr.的2025赛季统计数据,并生成一个比较关键绩效指标的自然语言分析。*

______________________________________________________________________

3.️⃣ 世界大赛与常规赛比较

MLB Agent - World Series Comparison *该系统将Guerrero Jr.的世界大赛数据与他的常规赛平均值进行了比较,展示了使用MLB数据的情境推理。*

______________________________________________________________________

这些截图突出了 MLB代理人 将结构化MCP工具输出与情境基岩分析相结合,以产生深入的棒球见解。

特性

核心MLB数据工具

  • 游戏信息:Boxscores、亮点、得分游戏、速度数据
  • 团队数据:名册、排名、领队、日程安排
  • 球员统计:个人球员统计数据(击球、投球、防守)
  • 联盟信息:联赛领先者,按赛区排名
  • 实时数据:当前游戏、下一个游戏、上一个游戏

可用的MCP工具

  • boxscore -获取游戏的格式化boxscore
  • game_highlight_data -检索游戏精彩视频
  • game_pace_data -获取游戏节奏统计数据
  • scoring_play_data -获取游戏的得分游戏
  • last_game / next_game -球队最近/即将举行的比赛
  • league_leader_data -联盟统计负责人
  • linescore -格式化和原始JSON linescore
  • lookup_player / lookup_team -搜索球员和球队
  • player_stat_data -全面的玩家统计
  • roster -球队名单信息
  • game_schedule -按日期/团队划分的比赛日程
  • standings -联赛/赛区排名
  • team_leaders -团队统计负责人

鸣谢

这个项目是建立在优秀的基础上的 美国职业棒球大联盟统计API Python库 托德·罗伯茨 (@toddrob99)。MLB-StatsAPI库为MLB的官方Stats API提供了一个干净的Python接口,并处理数据检索和格式化的所有繁重工作。

使用的MLB StatsAPI功能:

  • 游戏数据检索(盒子分数、亮点、时间表)
  • 球员和球队统计
  • 联赛排名和排行榜
  • 实时游戏信息
  • 历史数据访问

我们感谢Todd Roberts和MLB StatsAPI项目的所有贡献者,让Python开发人员可以轻松访问MLB数据。

快速开始

先决条件

  • Python 3.11或更高版本
  • 紫外线 包管理器

安装

  1. 克隆存储库
   git clone 
   cd mlb_mcp_server-main
  1. 安装依赖项
   uv sync
  1. 运行MCP服务器
   uv run mcp run mlb_mcp_server.py

Web界面(Streamlit)

对于用户友好的聊天界面:

  1. 设置环境变量 (创建 .env 文件):
   AWS_REGION=us-east-1
   BEDROCK_MODEL_ID=us.anthropic.claude-3-7-sonnet-20250219-v1:0
   SERVER_CMD=uv run mcp run mlb_mcp_server.py
  1. 运行Streamlit应用程序:
   uv run streamlit run streamlit_app.py
  1. 访问界面http://localhost:8501

使用示例

命令行(通过MCP)

# Get today's MLB standings
echo '{"method": "call_tool", "params": {"name": "standings"}}' | uv run mcp run mlb_mcp_server.py

# Get team roster
echo '{"method": "call_tool", "params": {"name": "roster", "arguments": {"team_id": 119}}}' | uv run mcp run mlb_mcp_server.py

web界面

  • “显示今天的排名”
  • “拿到道奇队的名单”
  • “谁是本赛季的本垒打领袖?”
  • “给我看看第716663场比赛的比分”

配置

环境变量

  • AWS_REGION -基岩的AWS区域(默认值:us-east-1)
  • BEDROCK_MODEL_ID -AI响应的基岩模型ID
  • SERVER_CMD -启动MCP服务器的命令

团队ID参考

常见的美国职业棒球大联盟球队ID(见 current_mlb_teams.json 完整列表):

  • 洛杉矶道奇队:119
  • 纽约洋基队:147
  • 费城费城人:143
  • 亚特兰大勇士队:144
  • 波士顿红袜队:111

部署选项

1.地方发展

# Install and run locally
uv sync
uv run streamlit run streamlit_app.py

2.Docker部署

创建一个 Dockerfile:

FROM python:3.11-slim

WORKDIR /app
COPY . .

RUN pip install uv
RUN uv sync

EXPOSE 8501

CMD ["uv", "run", "streamlit", "run", "streamlit_app.py", "--server.address", "0.0.0.0"]

构建并运行:

docker build -t mlb-mcp-server .
docker run -p 8501:8501 mlb-mcp-server

3.云部署

AWS EC2/ECS

  1. 使用上面的Docker方法
  2. 配置用于访问Bedrock的AWS凭据
  3. 部署到ECS或在EC2实例上运行

Heroku

  1. 添加 Procfile:
   web: uv run streamlit run streamlit_app.py --server.port=$PORT --server.address=0.0.0.0
  1. 通过Git或Heroku CLI部署

铁路/渲染

  1. 连接您的GitHub存储库
  2. 在平台仪表板中设置环境变量
  3. 从主分支使用自动部署

建筑

MCP服务器(mlb_mcp_server.py)

  • 基于FastMCP的服务器提供MLB数据工具
  • 通过连接到MLB Stats API mlb-statsapi 包裹
  • 支持格式化文本和原始JSON响应

流媒体接口(streamlit_app.py)

  • 基于Web的聊天界面
  • 支持Strands Agent(高级)和回退模式
  • 实时工具发现和执行

依赖项

  • mcp[cli] -模型上下文协议框架
  • mlb-statsapi -MLB统计API客户端
  • streamlit -Web界面框架
  • strands-agents -高级AI代理框架(可选)
  • httpx -API请求的HTTP客户端

API 参考

关键工具参数

game_schedule

{
    "date": "MM/DD/YYYY",           # Specific date
    "start_date": "MM/DD/YYYY",     # Date range start
    "end_date": "MM/DD/YYYY",       # Date range end
    "team_id": 119,                 # Team ID
    "season": "2024"                # Season year
}

player_stat_data

{
    "personID": 545361,             # Player ID
    "group": "hitting",             # hitting/pitching/fielding
    "type": "season",               # season/career
    "season": "2024"                # Season year
}

standings

{
    "leagueID": "103,104",          # AL=103, NL=104
    "division": "all",              # Division filter
    "season": "2024",               # Season year
    "date": "MM/DD/YYYY"            # Historical date
}

故障排除

常见问题

  1. MCP服务器无法启动

- 确保已安装Python 3.11+ - 跑 uv sync 安装依赖项 - 检查一下 mlb_mcp_server.py 可执行

  1. 流式传输连接错误

- 验证环境变量中的MCP服务器命令 - 检查基岩访问的AWS凭据 - 确保安装了所有依赖项

  1. 工具调用失败

- 验证所需参数(团队ID、日期) - 检查MLB统计API的可用性 - 查看错误日志以了解具体问题

调试模式

通过设置启用调试日志记录:

logging.basicConfig(level=logging.DEBUG)

贡献

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

许可证

这个项目是开源的。请检查存储库以了解许可证详细信息。

底层MLB StatsAPI库也是开源的,请参阅他们的 仓库 获取许可证信息。

支持

对于问题和疑问:

  1. 检查上面的故障排除部分
  2. 查看 MLB StatsAPI文档
  3. 查看MLB Stats API文档
  4. 在存储库中打开问题

相关项目

______________________________________________________________________

备注:此服务器需要访问internet才能连接到MLB Stats API。在美国职业棒球大联盟休赛期或维护期间,某些功能可能会受到限制。

目录标签

目录标签

PythonClaude数据分析MLB数据本地部署体育统计棒球API服务

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

15

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP