Use with agents
Give a coding agent the Kinetograph skill and MCP tools so it can write, check and render videos.
An agent can't watch a video, so Kinetograph gives it two things:
- A skill that teaches it a loop: write, look, check, render. The agent can write a Remotion-style TSX project or an HTML page.
- An MCP server that runs each CLI command as a tool and returns frames as images.
The MCP server
The server is npx kinetograph mcp, over stdio. It has one tool for each CLI command except studio, which keeps running until stopped. Studio has its own chat with your coding agent and gives it these tools.
A tool takes the same arguments as its command. Command names with a space use an underscore, so audio analyze is audio_analyze. An error comes back as { "error": { "code", "message" } }.
| Tool | What it does |
|---|---|
compositions | List the compositions of a project |
still | Render one frame to a PNG; returns the image |
strip | Contact sheet of evenly spaced frames, labelled with frame and time; returns the image |
onion | Frames of a range blended over one another, to show a motion path; returns the image |
inspect | The scene graph at a frame: layers, bounds and resolved styles |
lint | Text overflowing its box or the canvas, layers off the canvas, overlapping text, missing fonts and assets, type errors, and what the engine can't draw from a Remotion project |
check | Type errors in the project (tsc --noEmit), such as a misspelled prop that renders without an error |
doctor | What a project holds that the engine cannot draw, and in which frames; with no entry, what this install can do |
render | Render frames to a video with audio |
snapshot | Compare frames with the approved PNGs in __snapshots__/ next to the entry |
audio_analyze | Loudness (LUFS), true peak, clipping and silences of the mixed audio |
bench | Milliseconds per frame for each stage |
effects | List the effects and their parameters |
plugins | List the Kinetograph plugins the project depends on, with the path of each SKILL.md |
For still, strip and onion, output is optional: the server writes a temporary PNG and returns it. render needs output.
Set up the MCP server
Every client runs the same command, npx -y kinetograph mcp. You need Node 22 or newer.
Claude Code
claude mcp add kinetograph -- npx -y kinetograph mcpThis saves the server for the current project. Add --scope project to write it to .mcp.json for the team, or --scope user to use it in every project.
Claude Desktop
Open Settings, then Developer, then Edit Config. The file is ~/Library/Application Support/Claude/claude_desktop_config.json on macOS and %APPDATA%\Claude\claude_desktop_config.json on Windows.
{
"mcpServers": {
"kinetograph": {
"command": "npx",
"args": ["-y", "kinetograph", "mcp"]
}
}
}Restart Claude Desktop after saving.
Cursor
Put this in .cursor/mcp.json in the project, or ~/.cursor/mcp.json for every project:
{
"mcpServers": {
"kinetograph": {
"type": "stdio",
"command": "npx",
"args": ["-y", "kinetograph", "mcp"]
}
}
}OpenAI Codex CLI
Add a table to ~/.codex/config.toml:
[mcp_servers.kinetograph]
command = "npx"
args = ["-y", "kinetograph", "mcp"]Or run codex mcp add kinetograph -- npx -y kinetograph mcp. codex mcp list shows the result.
Install the skills
There are two skills:
kinetographteaches the write, look, check, render loop. It covers how a project is laid out, sound, Remotion compatibility,doctorand the CLI flags an agent needs.kinetograph-migratemoves an existing Remotion project onto Kinetograph. See Migrate from Remotion.
Install both from the GitHub repo with the skills CLI. It asks which agents to install them for:
npx skills add 0xS4N4TG/kinetograph --list # show what it found, install nothing
npx skills add 0xS4N4TG/kinetograph # installThe skills also come inside the npm package. To copy them to where Claude Code looks for skills:
mkdir -p ~/.claude/skills
cp -R node_modules/kinetograph/skills/kinetograph node_modules/kinetograph/skills/kinetograph-migrate ~/.claude/skills/For one project only, copy them to .claude/skills/ in that project instead. Other agents that read SKILL.md files can use the same folders.
One more skill, kinetograph-taste-clone, lives in kinetograph-ui. It turns a reference reel into a spec or a reusable style. See Match a reel, keep its taste.
The loop the skill teaches
- Write a project file that calls
registerRoot. - Look.
stripshows twelve labelled frames at once,stillshows one, andonionshows a motion path. - Check without looking at pixels.
inspectgives each layer's position and bounds.lintreports overflow, off-canvas layers, and missing fonts and assets.checkcatches type errors. - Fix and go back to step 2. A still takes well under a second.
- Render with
render. Use--draftfor a half-size look first. Rundoctorbefore a long render of a project that uses HTML elements or CSS, to see what the render will leave out.
A prompt as short as "make a 5 second title card for X, check it with strip and lint, and render it to out/title.mp4" is enough to start this loop.