Tool
AI video generator for coding agents
An agent that can call a video API is not the same as an agent that can be trusted with one. It needs to know what a render will cost before it starts, it needs to be unable to double-charge on a retry, and it needs a ceiling on what it can spend in a day. StoryTok's agent package is built around those three things, and it plugs into Cursor, Codex, Claude Code, Windsurf and Claude Desktop as an MCP server, or into anything else as a CLI with a skill file.
The surface is eleven tools: account and catalog lookups, a Reddit importer, five creators (story, texting story, captions, split screen, highlights) and job status, wait and download. Every creator is two-phase. Without confirm it returns an estimate in minutes and credits; with confirm it renders. The tool descriptions state that rule, so the agent reads it on connect rather than relying on a system prompt you have to maintain.
Each key carries a rolling 24-hour credit cap, 30 by default and editable per key, which bounds what a loop can spend if the confirm step is somehow bypassed. Job creation sends an idempotency key derived from the inputs, so a retried call returns the existing job. Failed renders refund their reservation. Stories settle on the measured length of the finished video, so the estimate is a ceiling, not the bill.
It runs locally with npx, which matters if you are wiring this into Cursor or Codex on a laptop: there is no hosted MCP endpoint to authorise and no OAuth round trip, just a key in the config block. For comparison, as of September 2026 Revid and OpusClip offer hosted MCP servers with OAuth on subscription or metered plans, and OpusClip clips existing video rather than narrating a script. Crayo's API is REST only, needs a paid plan and charges credits even when a job fails; AutoShorts and Faceless.so have no agent integration we could find. Of the Reddit-story and texting-story tools we checked, StoryTok is the one an agent can drive on pay-per-minute credits, with a local option that works on the free trial.
How it works
Step 1
Pick your client
Claude Code takes one command. Codex takes a block in ~/.codex/config.toml. Cursor, Windsurf and Claude Desktop take the same mcp.json snippet. Anything else runs the CLI with STORYTOK_API_KEY set and reads the bundled SKILL.md.
Step 2
Let the agent read the catalog
get_catalog returns valid voice ids with the premium flag, 16 caption presets, six chat themes, the background keys and highlight types. Agents that call it first do not invent ids.
Step 3
Estimate, then confirm
The agent calls a creator without confirm, gets minutes and credits and the balance, shows you, and calls again with confirm only after a yes. On the CLI the same gate is --yes; without it the command prints the estimate and exits 3.
Step 4
Wait and download
wait_for_job blocks until the render finishes and reports the credits charged on the real length. download_job writes the MP4, or every highlight clip plus a zip, into a folder on the machine running the agent.
Specifics
- Clients
- Claude Code, Codex, Cursor, Windsurf, Claude Desktop (MCP); any shell or agent (CLI + skill file)
- Tools
- get_account, get_catalog, import_reddit_post, five create_* tools, get_job, wait_for_job, download_job, list_jobs
- Guards
- Two-phase confirm, idempotent creation, per-key daily cap (30 credits default), automatic refunds
- Auth
- A stk_live_ key in the config, or storytok login with a browser-approved device code
- Output
- 1080×1920 MP4, H.264/AAC, loudness-normalised, no watermark on any paid pack
- Cost
- 3 free minutes at signup, then ~17¢ per rendered minute on the $10 pack
Worth knowing
- The estimate is voice-aware: a UK voice reads slower than a US one and the credit estimate reflects it, so the agent's number is the one you will roughly pay.
- Uploads for captions, split screen and highlights go straight from the agent's machine to storage with a presigned URL; the file never passes through StoryTok's web servers.
- The package is MIT-licensed and on GitHub, so you can read exactly what each tool sends before you give an agent a key.
- Keys carry the full permissions of your account; keep them in agent config on your own machine, not in a shared repo.
Questions
Does this work in Cursor and Codex, or only Claude Code?
All of them. Cursor, Windsurf and Claude Desktop take a standard mcpServers block; Codex takes an mcp_servers block in its config.toml; Claude Code takes one claude mcp add command. The snippets for each are on the agents docs page and are generated from the same source so they never drift.
Why a local MCP server instead of a hosted one?
Because a local server needs no OAuth flow and no authorisation screen: the key in the config is the entire setup, and it works from a fresh account on the free trial. Hosted MCP servers, like the ones Revid and OpusClip offer as of September 2026, are convenient for chat clients but tie you to their subscription or metered plan.
What stops an agent loop from draining my balance?
The daily cap. Every key reserves at most 30 credits in any rolling 24 hours unless you raise it, and you can set it lower per key. Combined with the confirm step and idempotent job creation, a misbehaving loop hits a wall rather than a large bill.
Can the agent make the video post itself?
No. The last tool is download_job, which saves the file locally. Posting to TikTok, Reels or Shorts is yours to do.
Connect an agent and render a test video free
3 free trial minutes at signup. No card, no plan, nothing renews.
Try StoryTok freeKeep reading
Product details and pricing current as of September 2026 · Reddit, TikTok, YouTube and Instagram are trademarks of their respective owners; StoryTok is not affiliated with them.