Three packages, and nothing hidden in them.
The CLI, the SDK and the MCP connector run on your machine — they touch your filesystem, your terminal and your payment method. A senior developer does not install that blind, so they are open source and auditable. The engine, the weights and the service stay ours.
No secrets, no pricing weights, no engine logic. They speak to the backend over a versioned HTTP contract and nothing more. Being auditable is a security requirement of the product, not a marketing concession.
capture returns the recipe in your terminal, free, and the purchase link only if you want the code. It never charges on its own.
npm i -g @mvoom/cli mvoom auth # paste your key once mvoom capture https://example.com # what moves there — free mvoom capture https://example.com --piece .hero --save src/motion/hero mvoom sync # every fix, for everything you own, in place mvoom budget --max-auto 25 --monthly 200 mvoom connect # buy in the chat, it lands in this folderTHE CLI MANUAL →
sync exists because components get better: if a performance bug is fixed in the skeleton of a piece you already bought, you get the fix. That is part of what the price pays for.
Turns a spec into real motion in production. Agnostic core, adapters per framework.
import { KineticProvider, useSpec } from "@mvoom/sdk/react";
import { kinetic } from "@mvoom/sdk/vue";- Reads
triggercorrectly: a viewport-enter mounts with an IntersectionObserver and a fixed duration; a scroll-scrub binds to progress. Confusing the two produces a different effect. - Honours
prefers-reduced-motionin JS-driven animations, not only CSS ones. The CSS rule never reaches what is mounted through WAAPI, and without this half the motion keeps running for someone who asked not to see it. - Declares smooth-scroll dependencies cleanly, without injecting global styles or breaking your bundler.
The connector for any MCP client: four tools — discover, capture, quote, buy. The one that can spend money asks a person first, through the client's own elicitation or your terminal; if neither is there, it refuses with the numbers, and the service refuses too.
npm i -g @mvoom/mcp # the binary is mvoom-mcp
mvoom auth # once, from @mvoom/cli: the connector reads the same key
{ "mcpServers": { "mvoom": { "command": "mvoom-mcp" } } }THE MCP MANUAL →The artefact format: what a read produces and what the SDK consumes. Geometry, layers and timing — facts about behaviour, never the page's content. See what a recipe contains.
The HTTP contract is versioned and is what the three packages speak; it gets documented here when the hosted service opens. Until then the supported surfaces are the CLI, the SDK and the MCP connector, against a service you run yourself.
CURRENT STATUS →