Rhylthyme ("real time") is a declarative language and runtime for schedules that a person executes: several lines of work running in parallel, dependencies between them, steps whose length is fixed, bounded or open-ended, and a few shared resources that only so many steps can use at once. A program is JSON; the runtime plays it live with a clock, cues and manual gates; an MCP server lets an AI agent author, validate and publish one as tool calls.
The same schema serves four verticals:
| Site | For |
|---|---|
| kitchen.rhylthyme.com | cooking several dishes so they finish together |
| lab.rhylthyme.com | bench protocols with overlapping incubations and shared instruments |
| events.rhylthyme.com | run-of-show and cue sheets |
| gym.rhylthyme.com | workouts, supersets and rest intervals |
General entry point: rhylthyme.com. Documentation: docs.rhylthyme.com.
A remote Model Context Protocol server exposes validation, timing analysis, catalog search, import and publication as annotated tools, plus the schema, an authoring guide and example programs as resources.
https://mcp.rhylthyme.com/mcp generic
https://mcp.rhylthyme.com/kitchen/mcp + cook_recipe, whats_for_dinner
https://mcp.rhylthyme.com/lab/mcp + run_protocol, random_protocol, Benchling import
https://mcp.rhylthyme.com/events/mcp + plan_event, random_event_template
https://mcp.rhylthyme.com/gym/mcp + start_workout, surprise_workout
claude mcp add --transport http rhylthyme https://mcp.rhylthyme.com/kitchen/mcpStreamable HTTP, no sign-in needed for the public catalog and the pure tools (validate_program, analyze_schedule). See rhylthyme-mcp for the tool reference.
| Repository | What it is |
|---|---|
| rhylthyme-spec | JSON Schema for programs and environments, annotated with OWL-Time vocabulary. On PyPI as rhylthyme-spec. |
| rhylthyme-cli-runner | rhylthyme command line: validate, plan, run (terminal UI), visualize. On PyPI as rhylthyme-cli-runner. |
| rhylthyme-timeline | @rhylthyme/timeline: zero-dependency timing engine and SVG Gantt renderer with dependency arrows. Tested for parity with the Python validator. |
| rhylthyme-examples | Example programs and environment definitions across the verticals. |
| rhylthyme-mcp | Documentation for the remote MCP server and its tools. |
| rhylthyme-docs | Source of docs.rhylthyme.com. |
The web application, importers (Spoonacular, TheMealDB, protocols.io, Cooklang, Opentrons, Benchling) and the MCP server implementation live in rhylthyme-server, which is being prepared for public release. A technical report describing the language, runtime and MCP server, and positioning them against project scheduling, temporal reasoning, robotics, lab automation and workflow engines, is in preparation.
pip install rhylthyme-cli-runner rhylthyme-spec
git clone https://github.com/rhylthyme/rhylthyme-examples
rhylthyme validate rhylthyme-examples/programs/breakfast_schedule.json
rhylthyme run rhylthyme-examples/programs/breakfast_schedule.jsonA minimal program:
{
"schemaVersion": "0.1.0",
"programId": "eggs-and-toast",
"name": "Eggs and toast",
"tracks": [
{ "trackId": "eggs", "name": "Eggs", "steps": [
{ "stepId": "whisk", "name": "Whisk", "task": "prep",
"duration": { "type": "fixed", "seconds": 60 },
"startTrigger": { "type": "programStart" } },
{ "stepId": "cook", "name": "Cook", "task": "stove",
"duration": { "type": "variable", "minSeconds": 120, "maxSeconds": 240, "defaultSeconds": 180 },
"startTrigger": { "type": "afterStep", "stepId": "whisk" } } ] },
{ "trackId": "toast", "name": "Toast", "steps": [
{ "stepId": "toast", "name": "Toast", "task": "toaster",
"duration": { "type": "fixed", "seconds": 180 },
"startTrigger": { "type": "afterStep", "stepId": "cook", "event": "start", "offsetSeconds": 60 } } ] }
],
"resourceConstraints": [
{ "task": "prep", "maxConcurrent": 1 },
{ "task": "stove", "maxConcurrent": 2 },
{ "task": "toaster", "maxConcurrent": 1 }
]
}Steps in a track run one after another; parallel work goes in separate tracks; every task needs a resource constraint; durations and offsets take seconds or strings like "5m".
Apache-2.0 for the specification, tools, examples and timeline engine; the MCP documentation repository is MIT.