speedrun-mcp
Enables AI assistants to query speedrun.com for games, categories, leaderboards, world records, players, and personal bests using natural language.
README
speedrun-mcp
A Model Context Protocol server for speedrun.com. It lets an AI assistant query games, categories, leaderboards, world records, players and their personal bests — e.g. "What's the current Super Mario 64 16-star world record, and who holds it?"
Built on speedrun.com's official, public REST API. No account or API key required (the read endpoints are open); results are shaped into compact, model-friendly JSON (player ids resolved to names, durations formatted, subcategory variables labeled).
Tools
| Tool | What it does |
|---|---|
search_games |
Fuzzy-search games by name → ids & abbreviations |
get_game |
A game's details plus its categories (and optionally levels) |
list_categories |
A game's categories (Any%, 120 Star, …) with rules |
list_variables |
Subcategory/filter variables and their value ids |
list_platforms / list_regions |
Platform / region ids for the platform/region leaderboard filters |
get_leaderboard |
A ranked leaderboard (top N; filter by variable / platform / region / timing) |
get_world_record |
The current #1 run for a game/category, plus any runs tied for first |
search_users |
Find players by username (partial, fuzzy match) |
get_user_personal_bests |
A player's PBs across all games |
get_run |
Details of a single run |
A typical flow: search_games → list_categories (and list_variables for
subcategories) → get_leaderboard / get_world_record. Use list_platforms /
list_regions when you need an id for the platform / region filters.
Install & run
Requires Python 3.10+.
# from PyPI (once published)
pipx install speedrun-mcp # or: uv tool install speedrun-mcp
# from source
git clone https://github.com/williamcodes/speedrun-mcp
cd speedrun-mcp
pip install -e .
The server speaks MCP over stdio:
speedrun-mcp # console script
python -m speedrun_mcp # equivalent
Use with Claude Desktop / Claude Code
Add to your MCP client config (e.g. claude_desktop_config.json):
{
"mcpServers": {
"speedrun": {
"command": "speedrun-mcp"
}
}
}
If you installed from source into a virtualenv, point command at that
interpreter, e.g. "command": "/path/to/.venv/bin/speedrun-mcp".
For Claude Code:
claude mcp add speedrun -- speedrun-mcp
Notes & limits
- Read-only. Submitting or moderating runs requires an authenticated speedrun.com session and is intentionally out of scope.
- Rate limit: speedrun.com allows 100 requests/minute per IP and responds with HTTP 420 when exceeded; the client surfaces a clear error if you hit it.
- Game and category arguments accept either an id (
o1y9wo6q) or an abbreviation (sm64). For precise subcategory leaderboards (e.g.16 Star), discover the variable/value ids withlist_variablesand passvariables={variable_id: value_id}. - Errors are explanatory. Invalid ids/filters raise an error that includes
speedrun.com's own message — e.g. passing a
levelto a full-game category returns "The selected category is for full-game runs, but a level was selected."
Output shape
- Times reflect the leaderboard's sort timing. When you pass
timing(realtime/realtime_noloads/ingame), the reportedtime/time_secondsmatch that ranking, not the game's default timing. get_leaderboardreturnsreturned_runs(the number of runs returned, bounded bytopand ties — not the full board size) and arunslist with resolved player names, formatted times, and labeled subcategories.get_world_recordreturnsworld_record(the place-1 run, ornullif the board is empty) plustied(a list of any other runs sharing first place).get_user_personal_bestsreturnsreturned(how many came back, capped bylimit) andtotal_available(the player's true PB count), plus thepersonal_bestslist with game/category names and resolved players.
Development
pip install -e ".[dev]"
pytest -m "not network" # unit tests (offline)
pytest # include live-API tests
ruff check .
License
MIT
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。