putty
MCPMediaMedia

media_generate_video

Animate a still image you own into a short video, with a mandatory cost confirmation. Call it WITHOUT `confirm` first: the tool prices the job, creates a tracked asset in `needs_confirmation`, and submits nothing. Show the user the quoted `credits` and duration. Call it AGAIN with `confirm: true` to spend them; only then does the video enter the media queue. The source image is read from Putty's own storage and the result is copied back into it, so no third-party URL is exposed, and `media_status` returns a signed URL once the render completes. A video is the most expensive job in this category and runs on a shared subscription, which is why confirmation is always required.

Animate a still image you own into a short video, with a mandatory cost confirmation. Call it WITHOUT confirm first: the tool prices the job, creates a tracked asset in needs_confirmation, and submits nothing.

Input

The tool takes a single JSON object. Every field, its type, and an example are on the generated reference at GET /mcp/tools, under this tool's name.

Calling it

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": { "name": "media_generate_video", "arguments": {} }
}

Put your arguments in place of the empty object. A call that fails comes back as a normal result carrying isError: true and a message naming what went wrong, not as a JSON-RPC protocol error.

Notes

Show the user the quoted credits and duration. Call it AGAIN with confirm: true to spend them; only then does the video enter the media queue. The source image is read from Putty's own storage and the result is copied back into it, so no third-party URL is exposed, and media_status returns a signed URL once the render completes. A video is the most expensive job in this category and runs on a shared subscription, which is why confirmation is always required.

The full request and response shape, and a live playground, live on the generated reference at GET /mcp/tools.

On this page