Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Model Context Protocol server for live & historical sports stats and odds via ESPN.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
ESPN_BASE_URL, ESPN_TIMEOUT_SECONDS, ESPN_MAX_RETRIES, ESPN_MCP_READONLY, ESPN_MCP_PROFILE, ESPN_MCP_ENABLE_TOOL_SEARCH, ESPN_MCP_TOOL_SEARCH_BACKEND你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"espn": {
"command": "uvx",
"args": [
"mcp-server-espn"
],
"env": {
"ESPN_BASE_URL": "your-value",
"ESPN_TIMEOUT_SECONDS": "your-value",
"ESPN_MAX_RETRIES": "your-value",
"ESPN_MCP_READONLY": "your-value",
"ESPN_MCP_PROFILE": "your-value",
"ESPN_MCP_ENABLE_TOOL_SEARCH": "your-value",
"ESPN_MCP_TOOL_SEARCH_BACKEND": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add espn --env ESPN_BASE_URL=your-value --env ESPN_TIMEOUT_SECONDS=your-value --env ESPN_MAX_RETRIES=your-value --env ESPN_MCP_READONLY=your-value --env ESPN_MCP_PROFILE=your-value --env ESPN_MCP_ENABLE_TOOL_SEARCH=your-value --env ESPN_MCP_TOOL_SEARCH_BACKEND=your-value -- uvx mcp-server-espn运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"espn": {
"command": "uvx",
"args": [
"mcp-server-espn"
],
"env": {
"ESPN_BASE_URL": "your-value",
"ESPN_TIMEOUT_SECONDS": "your-value",
"ESPN_MAX_RETRIES": "your-value",
"ESPN_MCP_READONLY": "your-value",
"ESPN_MCP_PROFILE": "your-value",
"ESPN_MCP_ENABLE_TOOL_SEARCH": "your-value",
"ESPN_MCP_TOOL_SEARCH_BACKEND": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"espn": {
"type": "stdio",
"command": "uvx",
"args": [
"mcp-server-espn"
],
"env": {
"ESPN_BASE_URL": "your-value",
"ESPN_TIMEOUT_SECONDS": "your-value",
"ESPN_MAX_RETRIES": "your-value",
"ESPN_MCP_READONLY": "your-value",
"ESPN_MCP_PROFILE": "your-value",
"ESPN_MCP_ENABLE_TOOL_SEARCH": "your-value",
"ESPN_MCP_TOOL_SEARCH_BACKEND": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
ESPN_BASE_URL envESPN_TIMEOUT_SECONDS envESPN_MAX_RETRIES envESPN_MCP_READONLY envESPN_MCP_PROFILE envESPN_MCP_ENABLE_TOOL_SEARCH envESPN_MCP_TOOL_SEARCH_BACKEND env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 christianclaudio 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(2.2.0)于8天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv)。
同一分类中有:Spec Driven Development, Remote Desktop Commander, Aiterm MCP
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Persistent terminals and one launcher for Claude, Codex, Grok, Cursor, and Antigravity harnesses.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Enterprise-grade Model Context Protocol (MCP) server for live and historical sports analytics, consensus betting odds, and predictions via ESPN.
Equips AI agents with real-time sports intelligence, live win probabilities, in-depth boxscore statistics, roster hierarchies, and matchup analytics.
[!IMPORTANT]
Community Project Disclaimer
mcp-server-espnis an independent open-source community project. It is not affiliated with, sponsored by, endorsed by, or supported by ESPN Inc. or The Walt Disney Company. *"ESPN"* is a trademark of ESPN Inc. All data provided via ESPN's public REST endpoints is intended for educational, research, and personal non-commercial use.
Autonomous sports analysis requires high-velocity, structured, and resilient data feeds:
mcp-server-espn provides a unified, hardened Model Context Protocol interface directly to ESPN's public sports data endpoints.
graph TD
Client["AI Agent / MCP Client (Antigravity, Claude, Codex, Cortex)"] Gateway["Root FastMCP Gateway (espn-mcp) (stdio / Streamable HTTP)"] ParentMW["Parent Middleware Pipeline (ParentAuditMiddleware & ReadOnlyGateMiddleware)"] GamesSub["Sub-Server: espn-games (games_* | GamesDomainGuard)"] TeamsSub["Sub-Server: espn-teams (teams_* | TeamsDomainGuard)"] NewsSub["Sub-Server: espn-news (news_* | Resources)"] ClientHandler["Hardened ESPN AsyncClient (Connection Pool & 429 Jitter Backoff)"] ESPN["ESPN Public REST CDN (https://site.web.api.espn.com)"]
Client <-->|"JSON-RPC (tools/list, tools/call)"| Gateway Gateway --> ParentMW ParentMW --> GamesSub ParentMW --> TeamsSub ParentMW --> NewsSub GamesSub & TeamsSub & NewsSub <-->|"API Methods"| ClientHandler ClientHandler <-->|"HTTPS REST Mirror"| ESPN
mcp-server-espn implements canonical FastMCP 4 Server Composition via root.mount(..., namespace="..."):
espn-games (games_*), espn-teams (teams_*), and espn-news (news_*).ParentAuditMiddleware (timing logs, audit trails, and secret scrubbing) and ReadOnlyGateMiddleware (fail-closed read-only enforcement).GamesDomainGuardMiddleware (query limit validation <= 100) and TeamsDomainGuardMiddleware (team and athlete identifier validation).--profile full|games|teams|news|readonly (ESPN_MCP_PROFILE):full (default): All 33 domain tools and resources mounted.games: Scores, summaries, schedules, standings, rankings, transactions, league leaders, draft, live play-by-play, situations, odds, probabilities, predictor, calendar, futures, power index (20 tools).teams: Rosters, depth charts, player stats, athlete profiles, bio, stats, gamelog, splits, search, list teams, team detail, team statistics (12 tools).news: League news and reference resources (1 tool).readonly: Read-only enforcement across all routes.tools/list by default for seamless client compatibility, while enabling search transforms via --enable-tool-search (ESPN_MCP_ENABLE_TOOL_SEARCH): BM25 ranking for natural-language queries by default (search_tools takes a query), or regex patterns with --tool-search-backend regex (ESPN_MCP_TOOL_SEARCH_BACKEND=regex; search_tools takes a pattern).games_get_scoreboard(sport="football", league="nfl") to identify close games in the 2nd half.games_get_game_situation(sport="football", league="nfl", event_id="401872947") and games_get_win_probabilities(sport="football", league="nfl", event_id="401872947") to inspect down/distance, red zone state, and live win expectancy curve.games_get_play_by_play(sport="football", league="nfl", event_id="401872947") for drive-by-drive sequencing and scoring event logs.teams_get_athlete_bio(sport="football", league="nfl", athlete_id="12483") to retrieve draft capital, college pedigree, and physical metrics.teams_get_athlete_gamelog and teams_get_athlete_splits to analyze performance trends against specific defensive schemes and venue conditions.games_get_leaders_by_athlete(sport="football", league="nfl", category="passing", sort="yards") to evaluate percentile rankings.The server supports canonical sport/league slug pairs and auto-normalizes popular shortcuts:
| Sport Slug | League Slug | Recognized Shortcuts / Aliases | Common Display Name |
|---|---|---|---|
football | nfl | nfl | National Football League |
football | college-football | cfb, ncaa-football, fbs | NCAA College Football |
basketball | nba | nba | National Basketball Association |
basketball | mens-college-basketball | cbb, ncaa-basketball | NCAA Men's College Basketball |
basketball | womens-college-basketball | wbb, ncaa-womens-basketball | NCAA Women's Basketball |
basketball | wnba | wnba | Women's National Basketball Association |
baseball | mlb | mlb | Major League Baseball |
hockey | nhl | nhl | National Hockey League |
soccer | eng.1 | epl, premier-league | English Premier League |
soccer | usa.1 | mls | Major League Soccer |
soccer | uefa.champions | ucl, champions-league | UEFA Champions League |
soccer | esp.1 | la-liga | Spanish La Liga |
soccer | ita.1 | serie-a | Italian Serie A |
soccer | ger.1 | bundesliga | German Bundesliga |
soccer | fra.1 | ligue-1 | French Ligue 1 |
All tools implement explicit MCP 2.0 annotations (readOnlyHint=True, idempotentHint=True):
| Domain | Tool | Parameters | Description |
|---|---|---|---|
| Games | games_get_scoreboard | sport, league, date, week, season_type, group, limit | Final scores and results for any date (date=YYYYMMDD) or inclusive date range (date=YYYYMMDD-YYYYMMDD; ranges of up to 31 days are fetched one day at a time, because ESPN rejects the range form on team-sport scoreboards, so limit applies to each day (up to 31 × limit events) and one failed day fails the whole call; golf ranges are sent to ESPN as is), plus live scores, state (pre/in/post), period/clock, TV broadcasts, starting probables. Returns event IDs for other game tools. |
| Games | games_get_game_summary | sport, league, event_id | Consensus betting lines, matchup predictor win %, ATS, scoring plays, drives, leaders, momentum. |
| Games | games_get_team_schedule | sport, league, team_id, season, season_type | Season schedule with historical game results and scores: the regular season by default, postseason games with season_type=3. |
| Games | games_get_standings | sport, league, season | Division, conference, and overall league standings, win-loss records, games back, and win percentages. season is the year the season ends (2016 = the 2015-16 NBA season), or the year it starts for soccer (2026 = the 2026-27 Premier League season); the response echoes requested_season, season, and season_display. |
| Games | games_get_rankings | sport, league | Top 25 national polls and rankings (AP Top 25, Coaches Poll, College Football Playoff). |
| Games | games_get_transactions | sport, league, limit | League-wide transactions, roster trades, waivers, signings, and releases. |
| Games | games_get_leaders_by_athlete | sport, league, limit, category, sort | Statistical leaderboards across players in a league. |
| Games | games_get_leaders_by_team | sport, league, limit, category, sort | Team statistical rankings and leaderboards. |
| Games | games_get_league_groups | sport, league | League conference, division, and structural group hierarchies. |
| Games | games_get_league_events | sport, league, dates | The league's current scheduled events. ESPN's events route ignores dates, so date filtering is not supported: a dates value returns isError: true with no request, pointing to games_get_scoreboard with the same value as date. |
| Games | games_get_league_draft | sport, league, season | League draft rounds, team selections, and pick results. |
| Games | games_get_scoreboard_header | sport, league | Live ticker scoreboard header data across games for a sport and league. |
| Games | games_get_event_odds | sport, league, event_id, competition_id | Sportsbook consensus and provider odds (spreads, totals, moneylines). |
| Games | games_get_play_by_play | sport, league, event_id, limit, page | Play-by-play sequence, clock, scoring, and drive events. |
| Games | games_get_game_situation | sport, league, event_id | Real-time in-game situation (down, distance, yardline, possession, red zone). |
| Games | games_get_win_probabilities | sport, league, event_id | Live and historical win probability curves across game progression. |
| Games | games_get_game_predictor | sport, league, event_id | Pre-game and in-game matchup predictor and projection metrics. |
| Games | games_get_calendar | sport, league, dates | League schedule calendar and active event dates across a season. |
| Games | games_get_futures | sport, league, season | Season futures betting markets (championship odds, win totals). |
| Games | games_get_power_index | sport, league, season | Team power index (FPI / BPI) ratings and efficiency metrics. |
| Teams | teams_search | query, type, limit | Global search for athletes and teams by name/keyword (type="player" or "team"). |
| Teams | teams_list_teams | sport, league | Directory of all
只显示了开头部分;其余内容请在仓库中阅读