Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Real-time multi-track schedules for cooking, lab protocols, events and workouts. Validate and share.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
适用于网页版、桌面版和手机版 Claude:
https://mcp.rhylthyme.com/mcp在终端中运行这条命令
claude mcp add --transport http rhylthyme https://mcp.rhylthyme.com/mcp粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"rhylthyme": {
"url": "https://mcp.rhylthyme.com/mcp"
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"rhylthyme": {
"type": "http",
"url": "https://mcp.rhylthyme.com/mcp"
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
ChatGPT 只能连接互联网上的服务器:
https://mcp.rhylthyme.com/mcp菜单名称可能因套餐和版本不同而略有差异。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
我们还没有读取这个服务器的工具列表;我们会轮流检查各个端点。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日
注册名称已通过域名 rhylthyme.com 验证(注册中心会核实域名所有权)
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
尚未检查;我们会轮流检查各个端点
尚未检查;我们会轮流检查各个端点
尚未检查;我们会在检查端点时读取工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在作者的云端运行。通过互联网连接,无需安装,但你发送的内容会经过作者的服务器。
GitHub 仓库最后更新于–,最新版本(1.3.0)于2个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,所以接受远程 MCP 服务器的应用也可以使用,例如开启开发者模式的 ChatGPT。
同一分类中有:Spec Driven Development, Remote Desktop Commander, Zoo 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.
An MCP server that provides access to the Zoo API for various CAD operations and tools.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
A Model Context Protocol server for schedules that a person executes: cooking several dishes so they finish together, running a bench protocol with overlapping incubations, calling an event, running a workout. An agent describes the process, the server validates and analyzes the resulting program, and publishes it as a live timeline on rhylthyme.com that the person follows on their phone.
This repository is the source of the server that runs at mcp.rhylthyme.com. It is the same code as mcp-api/ in the rhylthyme-server application, copied here with the static assets it needs so it can be read, tested and self-hosted.
Connect the server (in claude.ai, Claude Desktop or mobile, add Rhylthyme from the Claude Connectors Directory; in Claude Code, /plugin marketplace add rhylthyme/rhylthyme-mcp then /plugin install rhylthyme@rhylthyme; anywhere else, add https://mcp.rhylthyme.com/gym/mcp as a connector), then say what you want in plain words:
Two of us in a garage gym: one kettlebell, one pull-up bar, one jump rope.
Thirty minutes, two rounds, and nobody stands around waiting for equipment.
Make it a Rhylthyme timeline.
You write no JSON. The assistant does, and the server keeps it honest. With that prompt Claude made three tool calls:
| Call | What came back |
|---|---|
validate_program | ✅ Program is valid — 2 tracks, 20 steps, 30m makespan. |
analyze_schedule | Resource conflicts: none. Each station has capacity 1, so this is the proof that Alex and Sam never want the kettlebell at the same moment |
visualize_schedule | a link, gym.rhylthyme.com?share=4995ef1b88744e80, with rest timers and interval beeps, and a text chart for the chat: |
0 15m 30m
Alex │░Warm-…░▒S…▒░Pu…░▒Ju…▒░░░▒Sw…▒░Pu…░▒Ju…▒░░░▒St…▒│ Sam │░Warm-…░▒P…▒░Ju…░▒Sw…▒░░░▒Pu…▒░Ju…░▒Sw…▒░░░▒St…▒│
Ask "show me a picture" and preview_timeline returns an image in the chat. For one coloured by station, which makes the rotation obvious, save the program the assistant wrote (ours is examples/recipe/garage-circuit.json) and run:
npx -y github:rhylthyme/rhylthyme-timeline garage-circuit.json -o garage-circuit.png \
--style web --palette tableau --color-by task
Then push on it: "add a third person", "we only have 20 minutes", "swap the rope for burpees". The assistant edits the program and the server checks it again.
Two repositories do related things and are easy to confuse. This one is the server an AI assistant talks to. rhylthyme (formerly rhylthyme-cli-runner) is the command a person types.
| rhylthyme-mcp | rhylthyme | |
|---|---|---|
| What it is | The MCP server: the tools an AI assistant calls | A command-line program: the rhylthyme command |
| Who uses it | Claude, ChatGPT, Cursor or any MCP client, on a person's behalf | A person at a terminal, a script, or CI |
| Where it runs | Hosted at mcp.rhylthyme.com; nothing to install | On your machine: pip install rhylthyme |
| Language | JavaScript (Node 20+) | Python 3.12+ |
| Input | A program the assistant builds in conversation | A program file on disk (JSON or YAML) |
| Validate a program | validate_program | rhylthyme validate (works offline) |
| Timing, conflicts, deadlines | analyze_schedule | rhylthyme analyze (asks the server) |
| Publish a live timeline | visualize_schedule | rhylthyme publish (asks the server) |
| Run a schedule with timers | no: it hands back a link to the web timeline | rhylthyme run, an interactive terminal runner |
| Recorded runs, calibration | reads runs saved to an account | records runs locally; rhylthyme runs, rhylthyme calibrate |
| Catalog search, imports, account library | yes | no |
| Also in the repository | the rhylthyme-mcp PyPI package (a stdio bridge to the hosted server), the Claude plugin marketplace | the Claude skill's source, the prompt-evaluation harness and its results, rhylthyme mcp-test |
How they fit together: the command-line tool is one of this server's clients. rhylthyme analyze, publish, generate and mcp-test are MCP calls to mcp.rhylthyme.com; rhylthyme validate, run, runs and calibrate never touch the network. Each has its own validator for the same program schema (JavaScript here, Python there), so a program is checked again when it is published.
Use this repository to connect an assistant, to read or self-host the server, or to change a tool. Use rhylthyme if you have a program file and a terminal, want timers in the terminal, or keep run records.
Two names to keep apart: rhylthyme-mcp on PyPI is this server's stdio bridge (command rhylthyme-mcp, source in python/); rhylthyme on PyPI is the command-line tool (command rhylthyme; it was published as rhylthyme-cli-runner before 0.5.0). The program format itself is defined in rhylthyme-spec, with examples in rhylthyme-examples.
| URL | Server name | Adds |
|---|---|---|
https://mcp.rhylthyme.com/mcp | rhylthyme-mcp | generic scheduler |
https://mcp.rhylthyme.com/kitchen/mcp | rhylthyme-kitchen-mcp | cook_recipe, whats_for_dinner |
https://mcp.rhylthyme.com/lab/mcp | rhylthyme-lab-mcp | run_protocol, random_protocol, Benchling import |
https://mcp.rhylthyme.com/events/mcp | rhylthyme-events-mcp | plan_event, random_event_template |
https://mcp.rhylthyme.com/gym/mcp | rhylthyme-gym-mcp | start_workout, surprise_workout |
Transport: Streamable HTTP, stateless. No sign-in is needed for the public catalog or the pure tools; account tools use the person's Rhylthyme account through OAuth 2.1, or a pasted token from the login tool in clients without OAuth. Server instructions describing the workflow are sent at initialize.
The rhylthyme CLI can drive this server directly: describe what you need in plain language and get back a live timeline URL, a program file, or both.
pip install rhylthyme # Python 3.12+
rhylthyme login # opens rhylthyme.com in your browser rhylthyme generate "roast chicken, potatoes and green beans for 6" \ -e kitchen --by 19:00 --with "one oven, four burners, one cook"
login signs you in through the browser and hands the session back to a one-shot listener on 127.0.0.1. It is stored in ~/.config/rhylthyme/credentials.json (mode 0600) and renews itself, so you only log in once. generate then calls two tools on this server:
-e (/kitchen/mcp, /lab/mcp, …) turns the request into a validated multi-track program. It runs four model turns server-side, which is why it needs a sign-in; it takes 20–60 seconds and is capped per day.It prints the ASCII Gantt, the itinerary and the URL. More examples:
# A lab protocol from a file; save the program and run it in the terminal
rhylthyme generate -e lab -f western_blot.txt -o blot.json --run
pbpaste | rhylthyme generate -e events --by "doors at 18:30" -q
rhylthyme generate -e gym "45 minute upper-body circuit, two people, one bench" --no-publish --json
| Flag | Meaning |
|---|---|
-e, --env | generic (default), kitchen, lab, events or gym. Picks the endpoint and the timeline site. |
--by | When everything must be finished: 19:00, dinner at 7pm. |
--with | Equipment and people limits in your own words. |
-f, --file | Read the request or source text from a file, or - for stdin. |
-o, --output | Save the program JSON. |
--run | Run the program in the terminal runner afterwards. |
--open | Open the live timeline in a browser. |
--no-publish, --json, -q | Skip publishing; print JSON; print only the URL. |
To check a server (this one, or your own deployment) end to end:
rhylthyme mcp-test # all five hosted endpoints, read-only
rhylthyme mcp-test --url http://localhost:3000/mcp -e generic --publish
rhylthyme whoami shows the stored sign-in; rhylthyme logout forgets it. On a machine without a browser, set RHYLTHYME_TOKEN to an access token from https://www.rhylthyme.com/mcp/auth (it lasts about an hour), or run rhylthyme login --token . RHYLTHYME_MCP_URL points the CLI at a self-hosted server.
Claude Code
claude mcp add --transport http rhylthyme https://mcp.rhylthyme.com/mcp
claude mcp add --transport http rhylthyme-kitchen https://mcp.rhylthyme.com/kitchen/mcp
Claude Desktop / claude.ai: Customize → Connectors, search for *Rhylthyme* and click Connect. For one of the other URLs above: Customize → Connectors → Add → *Add custom connector* → paste the URL → Continue. Public tools work immediately; run login only to save to your own account.
Claude Code plugin (the hosted server plus a skill that teaches Claude to author, validate and analyze schedules):
These are two commands. Send the first on its own:
/plugin marketplace add rhylthyme/rhylthyme-mcp
then, once it says the marketplace was added, the second:
/plugin install rhylthyme@rhylthyme
ChatGPT: Settings → Apps & Connectors → Advanced settings → turn on *Developer mode*, then *Create* a connector with one of the URLs above as the MCP server URL. Without a connector ChatGPT cannot call these tools and falls back to browsing the website.
Cursor (.cursor/mcp.json):
{ "mcpServers": { "rhylthyme": { "url": "https://mcp.rhylthyme.com/kitchen/mcp" } } }
Claude API (MCP connector, one request):
import anthropic
client = anthropic.Anthropic() resp = client.beta.messages.create( model="claude-opus-5", max_tokens=16000, betas=["mcp-client-2025-11-20"], mcp_servers=[{"type": "url", "url": "https://mcp.rhylthyme.com/kitchen/mcp", "name": "rhylthyme"}], tools=[{"type": "mcp_toolset", "mcp_server_name": "rhylthyme"}], messages=[{"role": "user", "content": "Plan Thanksgiving for 8 with one oven, dinner at 6pm."}], )
Reviewing an import. review_program (an account tool) has a model read an imported program against its source and return findings: wrong durations, dropped steps, bad ordering, a total that disagrees with the source. Call it after import_from_source or import_text, apply what it says, and validate again.
Clients that can only launch a command: pip install rhylthyme-mcp gives a rhylthyme-mcp command, a stdio bridge that passes every request through to the hosted server (source in python/):
{ "mcpServers": { "rhylthyme": { "command": "rhylthyme-mcp", "args": ["kitchen"] } } }
No MCP client at all (a
只显示了开头部分;其余内容请在仓库中阅读