Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Six Product API tools require authentication; protocol metadata discovery is keyless.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
适用于网页版、桌面版和手机版 Claude:
https://mcp.therundown.io/mcp在终端中运行这条命令
claude mcp add --transport http data https://mcp.therundown.io/mcp粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"data": {
"url": "https://mcp.therundown.io/mcp"
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"data": {
"type": "http",
"url": "https://mcp.therundown.io/mcp"
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
ChatGPT 只能连接互联网上的服务器:
https://mcp.therundown.io/mcp菜单名称可能因套餐和版本不同而略有差异。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
我们还没有读取这个服务器的工具列表;我们会轮流检查各个端点。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日
注册名称已通过 GitHub 账户 TheRundown 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
尚未检查;我们会轮流检查各个端点
尚未检查;我们会轮流检查各个端点
尚未检查;我们会在检查端点时读取工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在作者的云端运行。通过互联网连接,无需安装,但你发送的内容会经过作者的服务器。
GitHub 仓库最后更新于–,最新版本(0.2.3)于2个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,所以接受远程 MCP 服务器的应用也可以使用,例如开启开发者模式的 ChatGPT。
同一分类中有:Spec Driven Development, Remote Desktop Commander, LickityClick
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ 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.
Create, edit and track LickityClick short links, campaigns and click stats from your AI assistant.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
This is the official TheRundown source repository.
aigeon-ai/therundownis unofficial.
The 0.4.0 source candidate registers 75 public REST operation tools, four bounded actual WebSocket capture tools, and six existing convenience tools. It uses the official MCP SDK and Node.js 22+. COVERAGE.md lists exact routes, aliases, retired/private exclusions and transport limits.
The hosted account connection is https://mcp.therundown.io/oauth/mcp; legacy / and /mcp accept Product API keys in authenticated headers.
On 2026-10-28, public initialize and tools/list metadata at https://mcp.therundown.io/mcp reported v0.4.0 and 85 tools, all annotated read-only; the check made zero Product calls. This count does not verify the exact source/image commit, every tool's Product behavior, OAuth, or directory approval. An earlier live check on 2026-10-03 reported v0.3.0 and six tools; that inventory is historical. Current discovery metadata is at therundown.io/.well-known/mcp.json. A personal connection is not a directory listing. The separate documentation MCP at https://docs.therundown.io/mcp cannot return Product prices.
ChatGPT uses Streamable HTTP. Each capture opens a real upstream WebSocket, observes at most five seconds / 50 messages / 256 KiB, then closes. It is not a continuous background feed. See COVERAGE.md for channel, snapshot and resume limits, and HOSTED.md for deployment requirements.
Anonymous metadata and ping make no Product calls. Every data tool requires local key authentication or the connected account on the OAuth route. Keep credentials out of prompts, URLs, source, logs and browser bundles.
The historical source ZIP below remains 0.2.3 and does not include this candidate. There is no published npm package. That ZIP is stdio-only; npm start does not start the HTTP adapter.
Download the versioned source bundle, verify its SHA-256 checksum, and extract it. The official ZIP is 41,072 bytes and its SHA-256 is cb0a0841aa040f049ffddec5b5fa2436cb9de721a30a3bd53270132db7204025. The ZIP manifest verifies every bundled source file. The ZIP README is generated from BUNDLE-README.md; this repository README also includes repository setup material. From the extracted ZIP directory:
npm ci --ignore-scripts
npm test
To run the checked-out source instead, use Node.js 22+ from this repository:
npm ci --ignore-scripts
npm test
For Claude Desktop's manual local configuration, add this to claude_desktop_config.json where supported and restart the client. Use absolute Node 22+ and server paths; this source ZIP is not a .mcpb desktop extension:
{
"mcpServers": { "therundown-data": { "command": "/absolute/path/to/node", "args": ["/absolute/path/to/therundown-data-mcp-0.2.3/server.mjs"], "env": { "THERUNDOWN_API_KEY": "YOUR_API_KEY" } } } }
For Cursor, use the global ~/.cursor/mcp.json and make the key available in the environment that launches Cursor:
{
"mcpServers": { "therundown-data": { "type": "stdio", "command": "/absolute/path/to/node", "args": ["/absolute/path/to/therundown-data-mcp-0.2.3/server.mjs"], "env": { "THERUNDOWN_API_KEY": "${env:THERUNDOWN_API_KEY}" } } } }
Client references: local MCP servers, Cursor.
Replace the path and key locally. Use your client's secret storage or inherited environment when available. Do not commit a filled-in client config. The server reads THERUNDOWN_API_KEY from its process environment and sends it only as X-TheRundown-Key; keys are never accepted as tool arguments. stdout contains only MCP protocol messages. Without a key, the process stays available for MCP metadata discovery and returns a sanitized missing_credentials error for Product tool calls without making a network request.
The original six convenience tools are:
| Tool | What it does | When not to use it for discovery |
|---|---|---|
list_sports | Lists current public sport IDs and names. | Do not infer that a sport has events or price coverage from its catalog row. |
list_affiliates | Lists current public affiliate IDs and names. | Do not use it as proof that a book offers a requested sport or market; retired 27 is excluded. |
list_markets | Lists market definitions, or date-scoped markets for a sport. | Do not treat definitions as open prices; date-scoped discovery rejects live. |
list_events | Finds dated event summaries and available market IDs for one sport. | Do not select an event from memory or a similarly named result; resolve the exact participant, date, and timezone first. |
get_main_lines | Fetches open per-affiliate main lines for one exact event ID. | Do not call it before list_events, or use it to search for an event; it requires the exact returned ID. |
list_futures | Lists scoped futures competition boards with public schedule, settlement, and open main-line fields. | Do not use it for ordinary dated event discovery or assume a catalog/settlement status alone proves the board is fully settled. |
list_markets keeps catalog discovery and can also discover markets available for one sport_id and date; date-based discovery rejects live because that endpoint does not classify live markets. Event queries always use main_line=true, hide_closed=true, and include=all_periods. list_futures is an Ultra+ competition endpoint with scoped defaults [1141] and [19,23], opaque cursor pagination, public schedule/settlement fields, and open per-affiliate main lines without line IDs. Defaults for dated event tools remain markets [1,2,3] and affiliates [19,23]. Pass live markets [41,42,43] explicitly. Retired affiliate 27 is rejected and excluded from discovery.
Use TheRundown to list current sports and affiliates. Find MLB (sport 3).
For today's UTC date, list events with market_ids [1,2,3] and affiliate_ids [19,23]. Select an event ID from that response and call get_main_lines with the same filters. Show the source URL, each book's line value and price updated_at, and the returned usage headers. Explain empty results without inventing odds.
npm test runs offline. To check actual Product API data, privately set THERUNDOWN_API_KEY and run npm run smoke. The default checks pre-match [1,2,3] for MLB and affiliates [19,23]. Free includes delayed pre-match odds and excludes live odds, props/alternates, and history; a source catalog row does not grant access to it.
With an eligible key, THERUNDOWN_SMOKE_LIVE=1 npm run smoke also requests live [41,42,43]. THERUNDOWN_SMOKE_DATE=YYYY-MM-DD and THERUNDOWN_SMOKE_SPORT_ID select the dated scope. For a bounded Ultra+ competition check, set THERUNDOWN_SMOKE_FUTURES=1 and a sport such as 40 (PGA) or 41 (Formula 1); it requests only market 1141 and affiliates 19,23. The check has a 60-second deadline, verifies the reviewed source tool manifest, and reports its UTC check time, scope, selected event ID, source URLs, usage, and counts. Require status: "ok", the full source tool manifest, and positive event/main-line counts. Empty data is inconclusive and exits 2. These requests are opt-in and metered.
Usage, API plan delays, and entitlements apply to every request. Catalog, date-market, event, and main-line pages paginate locally, so each page refetches a snapshot and is separately metered. list_futures uses the API's upstream opaque cursor and page limit; each cursor page is still a metered request and is only a partial competition listing when has_more is true. Results expose safe source URLs, retrieval timestamps, API usage headers, and per-price updated_at; a retrieval timestamp is not evidence that a price is fresh.
Read therundown://brief through MCP resources for the current Build with AI rules and first conversation. Initialization returns the same instructions; neither operation calls the Product API.
HTTP failures return status, plan, missing_entitlement, required_plan, retry_after (seconds), remaining_points, monthly_remaining_points, and limit_reason, alongside the safe source URL, retrieval time, and usage headers. Fields stay null when the API does not supply a recognized value. The server does not guess the current plan from a denied feature. Raw upstream error bodies are never returned, and errors do not trigger automatic retries.
An empty successful result retains its normal data shape and adds empty with a code, explanation, and request scope. Dated results report the sport, date, and date-boundary offset (UTC at zero); a page beyond existing results is identified separately from an empty slate. Empty odds do not establish absent coverage.
See the setup guide, DESIGN.md, authentication, and billing. Read the OpenAPI specification, sports catalog, markets catalog, affiliates catalog, TheRundown llms.txt, and documentation llms.txt for current public contracts and IDs.