美国国家橄榄球联盟
用于NFL数据的MCP服务器(2013-2025),由 炎症 以及DuckDB。 在Claude Code、VS Code或Claude Desktop中使用自然语言查询每场比赛、名单、伤病、统计数据等。
问克劳德以下问题:
- *“2024年,谁的每场比赛EPA最好?”*
- *“向我展示Patrick Mahomes按季完成率超出预期的百分比”*
- *“2023年KC与PHI第四季度红区效率比较”*
- *“在第三种和长期情况下,哪种防御的麻袋率最高?”*
- *“谁在2023年第10周参加了老鹰队的IR?”*
- *“向我展示2024年酋长接待团的快速统计趋势”*
快速启动
pip install nfl-mcp # or: uvx nfl-mcp
nfl-mcp init # configure, load data, and start the serverinit 引导您完成设置,并在完成后立即启动服务器。没有要安装的数据库服务器。没有要管理的凭据。数据存储在本地DuckDB中。
先决条件
- Python 3.10+
- 紫外线 (推荐)或pip
设置
1.初始化
nfl-mcp init向导将:
- 配置本地DuckDB数据库路径
- 下载默认的NFL数据集(按场比赛、名单、统计数据、伤病情况等)
- 自动配置IDE(克劳德桌面和/或VS代码)
- 主动提出立即启动服务器
选项:
--skip-ingest Configure without loading data2.启动服务器
init 提供为您启动服务器。如果以后需要手动启动它:
nfl-mcp serve
nfl-mcp serve --port 9000
nfl-mcp serve --host 0.0.0.0服务器使用 MCP流式HTTP 运输。将任何MCP客户端指向 http://: /mcp.
注: 服务器必须正在运行才能连接IDE。跑 nfl-mcp serve 在终端中并保持其打开状态。3.验证
nfl-mcp doctor检查数据库连接、加载的数据和IDE配置。
4.手动客户端配置(可选)
如果在初始化过程中跳过IDE设置,或者需要重新配置:
nfl-mcp setup-client # auto-detect clients
nfl-mcp setup-client --client vscode # VS Code only
nfl-mcp setup-client --client claude-desktop或手动配置。添加 .vscode/mcp.json (VS代码):
{
"servers": {
"nfl": {
"url": "http://localhost:8000/mcp"
}
}
}添加 ~/Library/Application Support/Claude/claude_desktop_config.json (克劳德桌面):
{
"mcpServers": {
"nfl": {
"url": "http://localhost:8000/mcp"
}
}
}CLI参考
nfl-mcp init Interactive setup wizard
nfl-mcp serve Start the MCP server (Streamable HTTP, default port 8000)
nfl-mcp ingest Load NFL data into the database
nfl-mcp setup-client Configure IDE MCP clients
nfl-mcp doctor Health check服务选项
nfl-mcp serve
nfl-mcp serve --port 9000
nfl-mcp serve --host 0.0.0.0摄入选项
nfl-mcp ingest # default datasets, all available seasons
nfl-mcp ingest --dataset all # every dataset
nfl-mcp ingest --dataset schedules # one specific dataset
nfl-mcp ingest --dataset pbp --dataset injuries # multiple datasets
nfl-mcp ingest --start 2020 --end 2024 # limit to a season range
nfl-mcp ingest --fresh # re-ingest even if already loaded
nfl-mcp ingest --list # show all available dataset names摄入是 幂等 --重新运行会跳过数据库中已有的数据集和季节。
数据集
所有数据来源于 nflever 通过nflreadpy并本地存储在DuckDB中。
|表|默认值|覆盖范围| |---|:-:|---| | plays | ✓ | 1999–目前| | schedules | ✓ | 1999–目前| | rosters | ✓ | 1920–目前| | player_stats | ✓ | 1999–目前| | team_stats_raw | ✓ | 1999–目前| | injuries | ✓ | 2009–目前| | snap_counts | ✓ | 2012–目前| | teams | ✓ | 电流| | players | ✓ | 有史以来| | contracts | ✓ | 历史| | trades | ✓ | 历史| | depth_charts || 2001年至今| | rosters_weekly ||2002年至今| | ff_opportunity ||2006年至今| | officials ||2015年至今| | nextgen_stats_* ||2016年至今| | participation | | 2016–2024 | | pfr_advstats_* ||2018年至今| | ftn_charting |2022年至今| | draft_picks || 1980年至今| | combine ||有史以来| | ff_playerids ||当前| | ff_rankings_draft ||当前| | ff_rankings_week ||当前|
nfl-mcp ingest --dataset all # load everything
nfl-mcp ingest --list # see all dataset namesMCP工具
| 工具 | 说明 |
|---|---|
nfl_schema | 数据库模式引用——默认情况下为紧凑摘要,传递 category 详细信息 |
nfl_status | 数据库运行状况:总播放次数、加载的季节、可用表 |
nfl_query | 用于自定义查询的原始SQL SELECT(500行上限,10秒超时) |
nfl_search_plays | 按球员、球队、赛季、赛季类型、情况、触地得分等查找比赛。 |
nfl_team_stats | 预先汇总的团队进攻、防守和态势统计数据 |
nfl_player_stats | 按赛季和赛季类型划分的球员统计数据——传球、冲刺或接球 |
nfl_compare | 两支球队或两名球员的并排比较 |
nfl_schedule | 比赛日程和结果——得分、点差、天气、教练 |
nfl_roster | 按赛季和位置列出的球队名单 |
nfl_injuries | 按球队、周和指定列出的球员受伤报告状态 |
nfl_snap_counts | 进攻、防守和特殊球队对每位球员进行计数 |
nfl_fantasy_opportunity | 目标份额、机场份额、每位球员每周的携带份额(2006年至今,要求 ff_opportunity 数据集) |
nfl_catalog | 列出所有已加载的表,包括行数和上次刷新时间 |
中的关键列 plays
epa--增加预期分数(最佳单人游戏质量指标)wpa--增加获胜概率posteam/defteam--进攻/防守球队缩写passer_player_name/rusher_player_name/receiver_player_nameplay_type—'pass'|'run'|'field_goal'|'punt'|'kickoff'| ...desc--原始游戏描述(使用ILIKE用于文本搜索)
本地开发
git clone https://github.com/ebhattad/nfl-mcp
cd nfl-mcp
pip install -e ".[dev]"
nfl-mcp ingest --dataset all --start 2024 --end 2024
nfl-mcp serve # server available at http://localhost:8000/mcp
pytest
pytest -m unit # unit tests
pytest -m integration # integration tests (requires loaded DB)故障排除
nfl-mcp doctor是验证配置、数据库和客户端设置的最快方法。- 如果工具返回数据库错误,请运行
nfl-mcp ingest以确保数据被加载。 - 您可以用以下命令覆盖数据库位置
NFL_MCP_DB_PATH=/path/to/nflread.duckdb. - 重新
nfl-mcp ingest它是安全的——它跳过已经加载的任何内容。
许可证
麻省理工学院
