A video production
MCP server.

Kleo exposes one film workflow to any MCP client: intake, treatment, storyboard, a render on a GPU rented for the job, and the links to a finished narrated film in 4K at 60 fps. One narrator, two looks, two products (a film, or an animatic of the same storyboard), 15 seconds to 5 minutes. There is no app and no dashboard; the assistant does the work through the tools below.

https://mcp.kleooai.com/mcp
01Endpoint

Connect over HTTPS.

Kleo is a remote MCP server: one address, the Streamable HTTP transport, OAuth 2.1. Configure the address in your MCP client and finish the authorization in the browser; there is no sign-up form and no password.

  • Endpointhttps://mcp.kleooai.com/mcp
  • TransportStreamable HTTP; the same address in every client.
  • AuthOAuth 2.1. During authorization the client opens Kleo’s own page; you click Start free and you are back in the client with 7 credits on the account. No form, no card.
  • Without a tokenA GET on the endpoint answers 401 and carries the OAuth resource metadata. It is a protocol endpoint, not a web page: opening it in a browser is not the connection process.
  • ClientsClaude, ChatGPT, Grok, Claude Code, Cursor, VS Code, OpenCode, Gemini CLI, Windsurf, the Gemini app, and any MCP SDK with the HTTP transport.

Connection steps for every client →

From a terminal or an editor.

Two of the tested clients, as examples. The other steps, from Claude and ChatGPT to VS Code and Gemini CLI, are on the connect page.

Claude Code cli

# add Kleo once claude mcp add --transport http kleo https://mcp.kleooai.com/mcp # then, inside a session: /mcp → Kleo → Authenticate

Kleo’s page opens in the browser; click Start free and you are back in Claude Code.

Cursor ~/.cursor/mcp.json

{ "mcpServers": { "kleo": { "url": "https://mcp.kleooai.com/mcp" } } }

Save the file. When Cursor connects, Kleo’s page opens: click Start free and you are back in Cursor.

02Workflow

The production sequence.

The tools run in a fixed order. The assistant reads your request, gets the treatment from kleo_adapt_prompt, writes the storyboard under kleo_storyboard_guide, and only then asks Kleo to render.

The kleo tools, in the order the assistant runs them

Tool What it does
kleo_adapt_prompt Reads the request against the intake (subject, length, format, look; optional audience, tone, what must appear), asks for what is missing, then returns the treatment: logline, angle, opening, acts, ending, look, pacing, narrator.
kleo_storyboard_guide Explains how to write the storyboard: the direction block, the scenes, the shots and the limits.
kleo_create_video Checks everything, states the exact credits, then starts the render on a GPU rented for that job. Takes product: "film" or "animatic".
kleo_get_job Reports the progress of a job in one call.
kleo_wait_for_video Waits for the render and reports the progress until the film is ready.
kleo_get_result Returns the links to the finished film.
kleo_cancel_job Stops a render and refunds the credits it had not spent.
kleo_list_templates Lists the one workflow, film, with its formats, lengths and voices, and the credits left on the account. The animatic is a product of that same workflow.
kleo_account Shows the credits, whether the account has paid (has_paid, which decides if a film can be ordered), the link to the account page, and the private Kleo key.
kleo_generate_thumbnail Not in the beta yet.

Use the live server’s tool schemas for the exact arguments. If your client limits how long a tool call may run, the assistant can poll kleo_get_job instead of holding kleo_wait_for_video open.

03Parameters

What a render takes.

kleo_create_video receives the request in your words plus the choices the intake asked for. The treatment and the storyboard come from the two planning tools, not from your keyboard.

  • promptThe request in the user’s own words.
  • productfilm (the default: every shot a generated clip, priced by length, for accounts that have bought a pack) or animatic (the drawn frames under a moving camera, no generated clip, 5 credits flat, 15 to 60 seconds, for every account).
  • duration_s15 to 300 seconds for a film, 15 to 60 for an animatic.
  • format16:9 for YouTube and landscape, 9:16 for a Short and vertical.
  • stylerealistic (generated live-action footage, cinematic) or animation (a 2D animated film). In a film every shot is generated as moving footage from its own frame; an animatic keeps the look in its drawn frames.
  • languageen or it narration. One narrator; no music, no captions, no on-screen text in the standard film.
  • voiceOptional: narrator-en-m, narrator-en-f, narrator-it-m or narrator-it-f.
  • treatmentOptional: the treatment returned by kleo_adapt_prompt (logline, angle, opening, acts, ending, look, pacing, narrator).
  • storyboardOptional: the storyboard written under kleo_storyboard_guide (direction block, scenes, shots, limits).

Price

A film: one credit is two seconds, rounded up, ten credits minimum: 15 s = 10 · 20 s = 10 · 30 s = 15 · 60 s = 30 · 90 s = 45 · 3 min = 90 · 5 min = 150. An animatic: 5 credits flat, 15 to 60 seconds. Connecting includes 7 credits, one animatic; a film is made only for accounts that have bought a pack (its clips are generated at Kleo’s expense, so free credits never buy one): 7 + the €5 pack = 17, the film opens, a 30-second Short. Packs are one-off, in EUR, no subscription: €5 = 10 credits · €15 = 35 · €40 = 100.

Nothing is charged until the job is accepted

kleo_create_video answers with the exact credits first; a refused call charges nothing, and kleo_cancel_job refunds the credits a stopped render had not spent.

Render time

A film typically takes 25–35 minutes on the rented GPU, an animatic about 15–20; the server tells the assistant the estimate for the job. It is not a fixed time.

Credit packs and the cost of any length →

04Output

A finished video as the output.

One MP4: 4K (3840×2160 or 2160×3840) at 60 fps, 16:9 or 9:16, with one narrator in English or Italian and, in a film, every shot generated as moving footage. kleo_get_result hands the assistant a link to the file; the link is good for 7 days.

Kleo never publishes to YouTube, TikTok or any channel, and the standard film carries no music, no captions and no on-screen text. Two looks are live on the server, realistic and animation; the site shows a sample of each on the looks page.

Watch the realistic samples →

05Account

Account and job handling.

Keep the OAuth tokens and the Kleo key out of logs and public examples: the key is private, and whoever has it owns the account. There is no dashboard; the account page (a read-only balance and the checkout links) is reached by asking the assistant, and kleo_account returns it.

A render spends credits: ask for confirmation before kleo_create_video runs, and reuse the job identifier when checking progress or cancelling. The server code is public.

Copied