One manifest
Runtimes and MCP servers declared together in a single ribosome.json,
instead of two separate, unsynced configs.
Standing up a project that uses MCP servers today means doing two unrelated
jobs by hand: installing the language runtimes each server needs, and
configuring each server separately, with no shared version policy, no
deduplication when ten servers all want node@24, and nothing pinned.
Nothing ties the two together — you find out something’s missing when a run
fails halfway through.
One manifest
Runtimes and MCP servers declared together in a single ribosome.json,
instead of two separate, unsynced configs.
Resolved up front
A missing tool or an unresolvable server fails at validation time – before any workflow runs – with every failure reported at once, not one at a time.
Deduplicated and pinned
Ten servers needing node@24 produce one pool entry, one install. Every
resolution lands in a single reproducible lockfile.
ribosome.json.ribosome.lock.json: a deduplicated
runtime pool plus one isolated environment view per server, reproducible on
the next run.npx @medullaflow/ribosome resolveReady to try it? Start with the Quickstart →, or read how ribosome works for the full design.