Published 2026-09-15 · Updated 2026-09-15

Kling 3.0 Dialogue Prompt Formula, and Batch Generation with Kling MCP

Short answer: Kling 3.0 speaks when you write dialogue as [Name: who they are, tone]: "line", place that label inside the shot where it belongs, and control the gaps with Immediately, and Pause. Give every shot a (Duration: N seconds), lock the cast with Elements, close with AUDIO and CONSTRAINTS — and the same template can be rendered fifty times over from Claude Code or Cursor through Kling MCP.

The dialogue formula

PartSyntaxExample
Speaker label[Name: who they are, tone]:[Mara: barista in a grey apron, tired but warm]:
Lineone sentence in straight quotes"We're closed. But the coffee's still hot."
Language / accentinside the bracket, after the tone[Mara: …, soft Slovak-accented English]:
Timing wordImmediately, / Pause. before the next labelImmediately, [Tomas: …]: "I didn't come for coffee."
Shot length(Duration: N seconds) after the shot labelShot 2 (Duration: 5 seconds):
Silencean action beat with no labelPause. She sets down the cup; the camera holds.

Four rules make it reliable. One sentence per line — a 15-second clip carries three or four short lines, not a monologue. The label goes inside the shot, after the action that motivates it, never in a list at the end. Tone in the bracket, not in the line — write "(angrily)" as part of the label, not inside the quotes. Keep the description of each speaker identical across shots; Kling reads it as the same person.

Shots, durations and the cast lock

  • Up to 15 seconds, up to six shots per generation. Label them Shot 1, Shot 2… and add (Duration: 5 seconds); the durations should sum to the clip length.
  • One camera behaviour per shot — static, push-in, tracking, pan — and one visible action. "She turns and pours and laughs" is three beats.
  • Elements: where your platform offers them, upload two to four reference images per character (frontal, profile, full body), name the element in the prompt and give it one job: identity only. Poses, light and background come from the shot text. See consistent AI characters.
  • Audio is a line, not a tag. "Rain on the window, espresso machine hiss, a distant tram; no music" — ambience, foley and music in one sentence.

A complete example (15 s, three shots, two speakers)

FORMAT: 15 s, 16:9, three shots, one location, natural sound.
ELEMENTS: @Element1 = Mara (identity only: face, hair, build). @Element2 = Tomas (identity only). Clothes, light and poses come from the shots below.
Shot 1 (Duration: 5 seconds): interior, small cafe at closing time, warm tungsten light, chairs already on the tables. Mara wipes the counter and looks up as the door bell rings. Camera: static medium shot from behind the counter.
[Mara: barista in a grey apron, tired but warm, soft Slovak-accented English]: "We're closed. But the coffee's still hot."
Shot 2 (Duration: 5 seconds): Tomas in the doorway, rain on his coat, hesitates, then steps in. Camera: slow push-in from Mara's eye line.
Immediately, [Tomas: mid-thirties, wet coat, out of breath, quiet]: "I didn't come for coffee."
Shot 3 (Duration: 5 seconds): two-shot at the counter. Pause. She sets down a cup anyway and almost smiles; the camera holds on both of them.
[Mara: amused, lower voice]: "Sit down, Tomas."
AUDIO: rain on the window, espresso machine hiss, a distant tram; no music.
CONSTRAINTS: no cuts inside a shot, no extra people, no on-screen text, same clothes and light in all three shots.

Common mistakes

  • Dialogue written as prose ("she says that they are closed") — no voice is rendered.
  • Tone inside the quotes — the model may read it aloud.
  • Two speakers in one bracket — assign each line its own label.
  • Six shots in 10 seconds — under two seconds per shot cannot carry a spoken line.
  • Different adjectives for the same person in Shot 1 and Shot 3 — the face drifts.
  • Negative prompts or spec tokens — write a CONSTRAINTS line instead.

Batch generation with Kling MCP

Kling publishes an official MCP guide — a protocol adapter that lets a general-purpose assistant such as Claude or Cursor call Kling text-to-video, image-to-video and image generation directly. Kling's own note: MCP and CLI usage spends paid credits from your Personal workspace only; team workspace benefits do not apply. Community servers such as mcp-kling wrap the public API and add polling, auto-download, 4-5 second extension and lip sync; they run through npx with your API keys in environment variables. A typical Claude Code or Claude Desktop entry:

{
  "mcpServers": {
    "kling": {
      "command": "npx",
      "args": ["-y", "mcp-kling@latest"],
      "env": {
        "KLING_ACCESS_KEY": "<from your Kling API console>",
        "KLING_SECRET_KEY": "<from your Kling API console>"
      }
    }
  }
}

Never paste keys into a prompt or a shared file; keep them in the config's env block or your shell. Then describe the batch to the agent once:

Read scenes.json (an array of {id, prompt, duration, aspect}).
For each scene, in order:
1. Validate the prompt: it must contain FORMAT, at least one "Shot N (Duration:" label, at least one "[Name: ...]:" dialogue label and a CONSTRAINTS line. Skip and report any scene that fails.
2. Call the Kling text-to-video tool with model kling-v3-omni, the scene's duration and aspect ratio, and the prompt verbatim.
3. Poll until the job is ready, download the file as out/<id>.mp4.
4. Append {id, task_id, file, seconds, status} to out/manifest.json.
Run scene 001 first and stop for my confirmation before the rest.

Three habits keep the credit bill sane: validate before rendering (the agent checks each scene for the required blocks), run one scene first and confirm the voice and the cut, and write a manifest so a failed job can be re-run alone. The Omni models (kling-v3-omni) accept the same prompt for text-to-video and image-to-video, so a batch can mix both.

Where GoldenPrompts fits

The Trends atelier writes each scene in this syntax — FORMAT, cast lock, numbered shots with durations, dialogue labels with tone, AUDIO and CONSTRAINTS — and the Canvas atelier keeps the entry and exit frames between scenes consistent. Export the scenes, save them as scenes.json, and the batch prompt above renders the whole storyboard. For the one-take alternative see the Seedance 2.5 prompt guide; for cut-based scenes in general, multi-shot video prompts.

FAQ

What is the Kling 3.0 dialogue syntax?

A speaker label in square brackets followed by the line in straight quotes: [Mara: barista in a grey apron, tired but warm]: "We're closed. But the coffee's still hot." The bracket carries who the person is, the tone and, if needed, the language or accent. Kling renders the voice, the lip sync and the timing from that one line.

How do I control when a line is spoken?

With temporal linking words before the next label. "Immediately, [Tomas: …]: "…"" plays the reply with no gap; "Pause." before an action or a label inserts a held beat. Put the label inside the shot where the line belongs and keep it to one sentence — at 15 seconds total you have room for three or four short lines.

How long can a Kling 3.0 clip be and how many shots?

Up to 15 seconds per output with up to six shots in a single generation. Label them Shot 1, Shot 2 … and give each a duration in parentheses — Shot 2 (Duration: 5 seconds): — so the cut lands where you planned. Longer scenes: extend the clip by 4-5 seconds per round or chain outputs.

How do I keep the same character across shots?

Define the character once at the top with the same words you reuse in every shot, and, where the platform supports Elements, upload two to four reference images per character (frontal portrait, profile, full body). Name the element in the prompt and give it one job — identity only — so the pose, lighting and background come from your shot description, not from the photo.

What is Kling MCP?

Kling publishes an official MCP (Model Context Protocol) guide: a protocol adapter that lets general-purpose assistants such as Claude or Cursor call Kling's text-to-video, image-to-video and image generation directly from a chat or a coding session. Kling notes that MCP and CLI use spend paid credits from your Personal workspace only; team workspace benefits do not apply. Community servers such as mcp-kling wrap the public API and add polling, auto-download, extension and lip sync.

Does batch generation change how I write the prompt?

No — it makes structure mandatory. Every scene in the batch needs the same blocks (FORMAT, ELEMENTS, Shot 1…n with durations, dialogue labels, AUDIO, CONSTRAINTS) so the agent can validate them before spending credits. Test one scene, fix the template, then run the list. GoldenPrompts' Trends atelier writes the scenes in this exact syntax, so the list is ready to paste.


Want the scenes written in Kling syntax, ready for the batch? GoldenPrompts builds them — shots, durations, dialogue labels, cast lock, audio and constraints — from a few clicks. Free to start: 24 hours of everything, no card.