Ziztu MCP server

The Ziztu MCP server gives Claude Code, Claude Desktop and Cursor 19 tools to plan, price and make micro dramas and anime episodes. Add it with one npx line and an API key.

Updated

Install

Make an API key first (Studio, Settings, API keys). Give it read and generate. Then pick your client.

Claude Code
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.

Claude Desktop: claude_desktop_config.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.

Cursor: .cursor/mcp.json
{
  "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 client that starts a stdio server
ZIZTU_TOKEN=sk_sakuga_your_key npx -y https://getziztu.com/dl/ziztu-mcp.tgz

The server speaks MCP over stdin and stdout, so a client starts it. Run it by hand only to check it starts: it waits for a client.

The package is served from https://getziztu.com/dl/ziztu-mcp.tgz and runs on Node 20 or newer. It is not on the npm registry, so there is nothing else to sign up for.

Pin one version
npx -y https://getziztu.com/dl/ziztu-mcp-0.1.0.tgz

Each release is also kept under its version number. The plain name above always points to the newest.

Settings

SettingWhat it does
ZIZTU_TOKENYour API key.
ZIZTU_BASE_URLThe address of Ziztu. Defaults to https://getziztu.com.
SAKUGA_TOKEN, SAKUGA_BASE_URLThe older names. Still read, after the ZIZTU names.
~/.config/ziztu/config.jsonA file with baseUrl and token, read when no variable is set.
~/.config/ziztu/config.json
{
  "baseUrl": "https://getziztu.com",
  "token": "sk_sakuga_your_key"
}

An alternative to the environment variables. The older ~/.config/sakuga/config.json is read too.

Tools

19 tools. Everything that costs credits takes max_credits, asks for confirm above 500 credits and accepts dry_run.

ToolWhat it doesArguments
list_projectsList all projectsNone
create_projectCreate a project{ name, aspect? }
get_projectGet project details{ project_id, full? }
director_chatAsk the Director in plain words; the reply has an id and proposed actions{ project_id, message }
director_planRun the Director planner for the scene specs only{ project_id, text }
apply_planApply all free Director actions of a reply{ project_id, message_id }
make_first_framesGenerate first-frame images{ project_id, max_credits, shot_ids?, count?, confirm?, dry_run? }
animate_shotsGenerate clips{ project_id, max_credits, shot_ids?, confirm?, dry_run? }
make_musicGenerate music{ project_id, max_credits, track_ids?, confirm?, dry_run? }
quotePrice an operation{ project_id, operation, ... }
export_filmExport the film{ project_id }
job_statusCheck job{ job_id }
list_jobsList jobs{ project_id }
get_creditsGet credit balanceNone
list_toolsList the Studio appsNone
recommend_toolRecommend a Studio app{ query }
run_toolStart a Studio app run{ tool, prompt, max_credits, settings?, confirm?, dry_run? }
get_tool_runGet run status{ tool, project_id }
approve_tool_runRaise budget{ tool, project_id, max_credits, confirm? }

One resource is available too: project://{project_id} returns the full project JSON, the same as GET /api/v1/projects/:pid.

Spend safety

  • max_credits is 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: true or the quote tool returns the exact credits and starts nothing. The quote also lists any shot that is blocked, and why.
  • Retries are safe with an Idempotency-Key header: the same key and body returns the first answer instead of running twice.
  • Scope the key. A key without generate cannot start paid work. Make a read key for an agent that should only look.
  • Revoke it any time under Settings, API keys. It stops working at once.

Director messages are metered by use and come off your credit balance. max_credits is the cap for the generation tools.

If something does not work

What you seeWhat to do
The server does not show up in the clientCheck that node --version is 20 or newer. In Claude Desktop, restart the app after saving the JSON. In Claude Code, run /mcp.
invalid_api_keyThe key is wrong or was revoked. Make a new one under Settings, API keys.
unauthenticatedNo key reached the server. Check that ZIZTU_TOKEN is set in the client's env, not only in your shell.
insufficient_scopeThe key lacks a scope. Make a key with generate to plan and make things, or export to export.
max_credits_requiredA paid tool was called without max_credits. The error carries the quote: send a cap at or above it.
over_max_creditsThe price is higher than the cap. Nothing was started. Raise the cap or change what you make.
rate_limitedMore than 120 requests a minute, or 30 paid ones. Wait for the time in the message.

All the error codes are on the API page.

A hosted connector is planned

A hosted connector at https://getziztu.com/mcp, so a client can connect without installing anything, is planned. It is not live yet. Until then the install lines above are the way in.

Frequently asked questions

What is the Ziztu MCP server?

A stdio MCP server that turns Ziztu's API into 19 tools. An agent can create a project, ask the Director to plan an episode, price the shots, make first frames, clips and music, and export the film.

How do I add it to Claude Code?

Run: claude mcp add -e ZIZTU_TOKEN=sk_sakuga_your_key ziztu -- npx -y https://getziztu.com/dl/ziztu-mcp.tgz. Make the key in the Studio under Settings, API keys.

How do I add it to Cursor or Claude Desktop?

Add an mcpServers entry named ziztu with the command npx and the arguments -y and the package URL, plus ZIZTU_TOKEN in env. The JSON is on this page.

Is it free?

The server is free. Tools that make things spend credits from your account. New accounts get 40 free credits. Plans start at $12 a month for 1,000 credits.

Is it on npm?

No. It installs from https://getziztu.com/dl/ziztu-mcp.tgz with npx.

Make the key and run the first plan.

New accounts get 40 free credits. No credit card required.