Skip to main content
Glama

Make a faceless video

create_video
DestructiveIdempotent

Make a faceless video without filming or uploading footage. Supply exactly one of idea (Clypmint writes the narration) or script (spoken exactly as supplied). Defaults to a 30-second vertical video; seconds may be 15, 30 or 60. An exact script sets its own length at about 2.5 words a second (at most 172 words for 60 s); leave seconds out with a script and the shortest length that fits is used, and a script too long is refused at once with the word count. Uses the selected style’s pictures, designed screens, captions and sound, with the linked account’s existing credits and limits. Style: inspect browse_styles and its actual inputs. Serif Editorial Launch is format: motion with inputs.voice:none by default; Bold Navy Statement is narrated faceless with Chris as its style default. An explicit voiceover request adds narration to motion while keeping its visuals and aligning them to the recorded speech. Other faceless styles or ready saved copies remain available. A style marked format: talking is made for someone on camera. Optional: style_id (with style_version for a saved style of your own), formats (9:16, 16:9, 1:1, 4:5; first is the main one), voice (one of 21 narrators by name; omitted, preserve the style’s voice default, including none for motion; "Voice: " in instructions works too), sound_effects (on unless false), music_bed (the style’s music under the voice, only when true), purpose, instructions up to 8,000 characters, asset_ids from list_assets, asset_staging_keys from import_asset (logo: true for the brand’s logo), and music_staging_key from import_asset. Cost: 3 credits to make, plus 1 for each started minute of voice-over and 1 for each started minute of finished video after the first, plus 2 for each extra format; dry_run: true answers the cost and starts nothing. For several videos at once use create_videos; for a month of posts use plan_content. Return the studio_url and call check_video with video_id for progress and the finished download. Preserve operation_id and arguments on retries; never publish unless separately requested.

Input Schema

NameRequiredDescriptionDefault
ideaNo
titleNo
voiceNoThe narrator for a video made from words: matilda, sarah, jessica, alice, liam, chris, brian, george, roger, laura, charlie, river, will, eric, bella, daniel, lily, bill, adam, callum, harry (sarah: calm, reassuring, health and money; alice: a clear British educator; brian: deep documentary; liam: energetic ads). Leave out to let Clypmint pick one that fits the words. "Voice: <name>" in instructions does the same.
formatNovertical
scriptNo
dry_runNotrue: answer the credit cost and start nothing.
formatsNoEvery shape to make, the main one first: 9:16, 16:9, 1:1, 4:5.
purposeNoorganic (a post), ad (three openings by default), youtube (horizontal), sales_page.
secondsNoHow long: 15, 30 or 60. With a script, leave it out: the script sets the length (about 2.5 words a second; at most 43 words for 15, 86 for 30, 172 for 60).
style_idNo
asset_idsNo
music_bedNotrue: lay the style's own music bed under the narration (none unless asked); false: never. music_staging_key brings a song of your own instead.
instructionsNoAnything else the user asked for, in their own words: where each picture goes, the tone. Length, narrator, pictures and shapes go in their own fields. No rule lists. A link written here is not opened: import a picture first with import_asset.
operation_idYes
sound_effectsNo
style_versionNo
music_staging_keyNoA song from import_asset (mp3, wav or m4a) to lay under the voice.
asset_staging_keysNoPictures the user wants shown (a portrait, a product shot, an app screen): import each with import_asset (its url) and list the keys here.

Output Schema

NameRequiredDescriptionDefault
codeNo
costNo
errorNo
stateNo
statusNo
dry_runNo
messageNo
plan_idNo
style_idNo
video_idNo
availableNo
import_idNo
output_idNo
studio_urlNo
version_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / asset_staging_keys / description
      Added value: +"Pictures the user wants shown (a portrait, a product shot, an app screen): import each with import_asset (its url) and list the keys here."
    • changedInput schema / properties / instructions / description
      Previous value: -"Anything else the user asked for, in their own words: where each picture goes, the tone. Length, narrator, pictures and shapes go in their own fields. No rule lists."New value: +"Anything else the user asked for, in their own words: where each picture goes, the tone. Length, narrator, pictures and shapes go in their own fields. No rule lists. A link written here is not opened: import a picture first with import_asset."
  2. Changed2 schema fields changed
    • addedInput schema / properties / instructions / description
      Added value: +"Anything else the user asked for, in their own words: where each picture goes, the tone. Length, narrator, pictures and shapes go in their own fields. No rule lists."
    • addedInput schema / properties / seconds / description
      Added value: +"How long: 15, 30 or 60. With a script, leave it out: the script sets the length (about 2.5 words a second; at most 43 words for 15, 86 for 30, 172 for 60)."
  3. Changed2 schema fields changed
    • addedInput schema / properties / music_bed
      Added value: +{
      +  "description": "true: lay the style's own music bed under the narration (none unless asked); false: never. music_staging_key brings a song of your own instead.",
      +  "type": "boolean"
      +}
    • changedInput schema / properties / voice / description
      Previous value: -"The narrator for a video made from words: matilda, sarah, jessica, alice, liam, chris, brian, george, roger, laura, charlie, river, will, eric, bella, daniel, lily, bill, adam, callum, harry. Leave out to let Clypmint pick one that fits."New value: +"The narrator for a video made from words: matilda, sarah, jessica, alice, liam, chris, brian, george, roger, laura, charlie, river, will, eric, bella, daniel, lily, bill, adam, callum, harry (sarah: calm, reassuring, health and money; alice: a clear British educator; brian: deep documentary; liam: energetic ads). Leave out to let Clypmint pick one that fits the words. \"Voice: <name>\" in instructions does the same."
  4. Changed1 schema field changed
    • changedInput schema / $schema
      Previous value: -"https://json-schema.org/draft/2020-12/schema"New value: +"http://json-schema.org/draft-07/schema#"
  5. Changed2 schema fields changed
    • changedInput schema / properties / voice / description
      Previous value: -"The narrator for a video made from words: matilda, sarah, jessica, alice, liam, chris, brian, george. Leave out to let Clypmint pick one that fits."New value: +"The narrator for a video made from words: matilda, sarah, jessica, alice, liam, chris, brian, george, roger, laura, charlie, river, will, eric, bella, daniel, lily, bill, adam, callum, harry. Leave out to let Clypmint pick one that fits."
    • changedInput schema / properties / voice / enum
      Previous value: -[
      -  "matilda",
      -  "sarah",
      -  "jessica",
      -  "alice",
      -  "liam",
      -  "chris",
      -  "brian",
      -  "george"
      -]New value: +[
      +  "matilda",
      +  "sarah",
      +  "jessica",
      +  "alice",
      +  "liam",
      +  "chris",
      +  "brian",
      +  "george",
      +  "roger",
      +  "laura",
      +  "charlie",
      +  "river",
      +  "will",
      +  "eric",
      +  "bella",
      +  "daniel",
      +  "lily",
      +  "bill",
      +  "adam",
      +  "callum",
      +  "harry"
      +]
  6. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "description": "Clypmint create_video result. Error results carry error; successful requests expose the identifiers and state available for the next step. Signed media stays in private metadata.",
      +  "properties": {
      +    "available": {
      +      "type": "boolean"
      +    },
      +    "code": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "cost": {
      +      "additionalProperties": true,
      +      "type": "object"
      +    },
      +    "dry_run": {
      +      "type": "boolean"
      +    },
      +    "error": {
      +      "type": "string"
      +    },
      +    "import_id": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "message": {
      +      "type": "string"
      +    },
      +    "output_id": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "plan_id": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "state": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "status": {
      +      "type": [
      +        "string",
      +        "integer",
      +        "null"
      +      ]
      +    },
      +    "studio_url": {
      +      "format": "uri",
      +      "type": "string"
      +    },
      +    "style_id": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "version_id": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "video_id": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    }
      +  },
      +  "type": "object"
      +}
  7. Changed7 schema fields changed
    • addedInput schema / properties / dry_run
      Added value: +{
      +  "description": "true: answer the credit cost and start nothing.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / formats
      Added value: +{
      +  "description": "Every shape to make, the main one first: 9:16, 16:9, 1:1, 4:5.",
      +  "items": {
      +    "enum": [
      +      "9:16",
      +      "16:9",
      +      "1:1",
      +      "4:5"
      +    ],
      +    "type": "string"
      +  },
      +  "maxItems": 4,
      +  "minItems": 1,
      +  "type": "array"
      +}
    • addedInput schema / properties / music_staging_key
      Added value: +{
      +  "description": "A song from import_asset (mp3, wav or m4a) to lay under the voice.",
      +  "pattern": "^stg_[A-Za-z0-9][A-Za-z0-9_-]{7,95}$",
      +  "type": "string"
      +}
    • addedInput schema / properties / purpose
      Added value: +{
      +  "description": "organic (a post), ad (three openings by default), youtube (horizontal), sales_page.",
      +  "enum": [
      +    "organic",
      +    "ad",
      +    "youtube",
      +    "sales_page"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / sound_effects
      Added value: +{
      +  "type": "boolean"
      +}
    • addedInput schema / properties / style_version
      Added value: +{
      +  "maximum": 10000,
      +  "minimum": 1,
      +  "type": "integer"
      +}
    • addedInput schema / properties / voice
      Added value: +{
      +  "description": "The narrator for a video made from words: matilda, sarah, jessica, alice, liam, chris, brian, george. Leave out to let Clypmint pick one that fits.",
      +  "enum": [
      +    "matilda",
      +    "sarah",
      +    "jessica",
      +    "alice",
      +    "liam",
      +    "chris",
      +    "brian",
      +    "george"
      +  ],
      +  "type": "string"
      +}
  8. Changed3 schema fields changed
    • addedInput schema / properties / idea
      Added value: +{
      +  "maxLength": 4000,
      +  "minLength": 3,
      +  "type": "string"
      +}
    • addedInput schema / properties / seconds / default
      Added value: +30
    • changedInput schema / required
      Previous value: -[
      -  "script",
      -  "seconds",
      -  "operation_id"
      -]New value: +[
      +  "operation_id"
      +]
  9. Added

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover mutation, idempotency, and destructiveness, but the description adds substantial behavioral context: exact credit costs, dry_run behavior, script-length refusal rules, voiceover alignment behavior, style format constraints, and retry guidance preserving operation_id.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose is front-loaded, but the body is an extremely dense run-on paragraph. Many details are necessary for 18 parameters, yet the lack of structure and sentence economy makes it harder to scan than it should be.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the 18-parameter complexity, 50% schema description coverage, and the existence of an output schema, the description supplies nearly all missing decision context. It covers creation semantics, cost, retries, output handling, and publishing constraints.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is only 50%, but the description compensates heavily: exactly one of idea or script, script length implied by seconds, style_id plus style_version for saved styles, voice defaults including none for motion, music_bed only when true, and staging-key usage for imported assets.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: make a faceless video without filming or uploading footage. It distinguishes itself from siblings by naming create_videos for multiple videos, plan_content for monthly posts, browse_styles for style inspection, and check_video for progress.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly routes the agent: use create_videos for several videos at once and plan_content for a month of posts. It explains dry_run as a cost-answer mode that starts nothing, and directs agents to check_video for progress and downloads.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources