Use Ziztu from an AI agent
To make a micro drama from Claude Code, add the Ziztu MCP server with one command, ask the Director to plan your idea, then make first frames and clips with a max_credits cap.
Updated
Install in one line
You need an API key first.
- Open the Studio at getziztu.com/app and sign in. Open Settings, then API keys.
- Name the key (for example "Claude Code") and pick its scopes:
readto look around,generateto plan and make things,exportto download films. - Copy the key. It starts with
sk_sakuga_and is shown once.
Then add the server to Claude Code. Put your key where it says sk_sakuga_your_key.
claude mcp add -e ZIZTU_TOKEN=sk_sakuga_your_key ziztu -- npx -y https://getziztu.com/dl/ziztu-mcp.tgz
Add --scope user to use Ziztu in every project. Run /mcp in Claude Code to see it connected.
The line runs the Ziztu MCP server from https://getziztu.com/dl/ziztu-mcp.tgz. It needs Node 20 or newer. Using Claude Desktop or Cursor? The MCP server page has the JSON for each.
Your first run, no clips made
Paste this into the agent. It plans an episode and prices it, and stops before anything is generated.
Use Ziztu to plan a 60 second vertical micro drama about a baker who finds a love letter in the dough. Create the project, ask the Director to plan it, apply the plan, then quote the first frames. Do not generate anything yet. Tell me the price and which shots are blocked.
The agent will call create_project, director_chat, apply_plan, quote in that order:
create_projectmakes an empty project (9:16 for a vertical drama).director_chatsends your idea to the Director. The reply has anidand a list of proposed actions: the cast, the places and each shot.apply_planapplies the free actions from that reply, so the project now has its characters and shots.quotereturns the exact credits for the first frames and lists every shot that is blocked, with the reason.
No first frame or clip is made, because those tools need max_credits and you have not given one. Director messages are metered by use and come off your credit balance.
Make the episode
When the quote looks right, tell the agent to go ahead with a cap.
Make the first frames for that project with max_credits 200. When they are done, show me the frames and wait. I will tell you whether to animate the shots.
The order the agent follows from here:
make_first_frameswithmax_credits. The still image of each shot comes first, so you can check the cast before you pay for motion.job_statusuntil the jobs finish.animate_shotswithmax_credits. Addconfirm: trueonly if you really mean to spend more than 500 credits.make_musicif you want a score, thenexport_filmto build the finished video.
If quote says a shot is blocked, the reason tells you what is missing. Ask the Director to fix it with director_chat, or edit the shot in the Studio, then quote again.
Spend safety rules
These are enforced by the server, not by the agent, so a confused or careless agent still cannot spend past the cap.
max_creditsis required on every call that costs credits: first frames, clips, music and Studio app runs. If the price is higher, the call is refused before anything starts.- Above 500 credits, add
confirm: true. A bigger spend needs a second, explicit yes. - Ask the price first.
dry_run: trueor thequotetool returns the exact credits and starts nothing. The quote also lists any shot that is blocked, and why. - Retries are safe with an
Idempotency-Keyheader: the same key and body returns the first answer instead of running twice. - Scope the key. A key without
generatecannot start paid work. Make areadkey for an agent that should only look. - Revoke it any time under Settings, API keys. It stops working at once.
Rate limits: 120 requests a minute per key, and 30 paid requests a minute.
Other clients
Claude Desktop and Cursor take the same server as JSON.
{
"mcpServers": {
"ziztu": {
"command": "npx",
"args": [
"-y",
"https://getziztu.com/dl/ziztu-mcp.tgz"
],
"env": {
"ZIZTU_TOKEN": "sk_sakuga_your_key"
}
}
}
}On a Mac the file is ~/Library/Application Support/Claude/claude_desktop_config.json. Restart Claude Desktop after you save it.
{
"mcpServers": {
"ziztu": {
"command": "npx",
"args": [
"-y",
"https://getziztu.com/dl/ziztu-mcp.tgz"
],
"env": {
"ZIZTU_TOKEN": "sk_sakuga_your_key"
}
}
}
}Use .cursor/mcp.json in a project, or ~/.cursor/mcp.json for every project.
Any other MCP client that starts a stdio server works with the command npx -y https://getziztu.com/dl/ziztu-mcp.tgz and the ZIZTU_TOKEN variable. The MCP server page lists every tool.
No MCP? Call the API
The MCP server is a thin layer over the REST API, so anything it does you can do with curl. This checks your key and balance:
curl -s https://getziztu.com/api/v1/credits -H "Authorization: Bearer $ZIZTU_TOKEN"
The API page has a full session from a new project to an export.
Frequently asked questions
How do I make a micro drama from Claude Code?
Add the Ziztu MCP server with one command, ask the agent to create a project and have the Director plan your idea, apply the plan, quote the first frames, then make them with a max_credits cap. The steps are on this page.
Do I have to install anything from npm?
No. The server installs from https://getziztu.com/dl/ziztu-mcp.tgz with npx, so there is no npm account or registry package involved. It needs Node 20 or newer.
Can the agent spend more than I allow?
No. Every paid call needs max_credits and is refused if the price is higher. Above 500 credits it also needs confirm: true. A key without the generate scope cannot start paid work at all.
What does the first run cost?
Planning and applying the plan make no clips. Director messages are metered by use and come off your balance. New accounts get 40 free credits.
Which agents work?
Claude Code, Claude Desktop and Cursor are covered on these pages. Any client that can start an MCP server over stdio works the same way.
Make the episode behind the prompt.
New accounts get 40 free credits. No credit card required.

