Skip to main content
Glama

text_to_video

Generate videos from text prompts using Grok Imagine on RunAPI. Returns task ID, status, and output URLs.

Instructions

Create a Grok Imagine task on RunAPI (text to video). Returns a task id, status, and output URLs.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
waitNoPoll until the task reaches a terminal status.
modelNoRunAPI model slug for this model line.
promptYesVideo generation prompt.
timeout_msNo
aspect_ratioNoOutput aspect ratio.
callback_urlNoWebhook URL for terminal Task delivery.
motion_styleNoVideo motion style.
duration_secondsNoOutput duration in seconds.
poll_interval_msNo
output_resolutionNoOutput resolution.
reference_image_urlsNoNot accepted by this model.
enable_safety_checkerNoEnable content safety checks.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed9 schema fields changedv0.1.13
    • removedInput schema / additionalProperties
      Removed value: -false
    • addedInput schema / properties / aspect_ratio / anyOf
      Added value: +[
      +  {
      +    "const": "2:3",
      +    "type": "string"
      +  },
      +  {
      +    "const": "3:2",
      +    "type": "string"
      +  },
      +  {
      +    "const": "1:1",
      +    "type": "string"
      +  },
      +  {
      +    "const": "16:9",
      +    "type": "string"
      +  },
      +  {
      +    "const": "9:16",
      +    "type": "string"
      +  },
      +  {
      +    "const": "auto",
      +    "type": "string"
      +  }
      +]
    • removedInput schema / properties / aspect_ratio / enum
      Removed value: -[
      -  "2:3",
      -  "3:2",
      -  "1:1",
      -  "16:9",
      -  "9:16",
      -  "auto"
      -]
    • removedInput schema / properties / aspect_ratio / type
      Removed value: -"string"
    • addedInput schema / properties / output_resolution / anyOf
      Added value: +[
      +  {
      +    "const": "480p",
      +    "type": "string"
      +  },
      +  {
      +    "const": "720p",
      +    "type": "string"
      +  },
      +  {
      +    "const": "1080p",
      +    "type": "string"
      +  }
      +]
    • removedInput schema / properties / output_resolution / enum
      Removed value: -[
      -  "480p",
      -  "720p"
      -]
    • removedInput schema / properties / output_resolution / type
      Removed value: -"string"
    • addedInput schema / properties / poll_interval_ms / maximum
      Added value: +9007199254740991
    • addedInput schema / properties / timeout_ms / maximum
      Added value: +9007199254740991
  2. Changed12 schema fields changedv0.1.11
    • addedInput schema / properties / aspect_ratio / description
      Added value: +"Output aspect ratio."
    • changedInput schema / properties / aspect_ratio / enum
      Previous value: -[
      -  "2:3",
      -  "3:2",
      -  "1:1",
      -  "16:9",
      -  "9:16"
      -]New value: +[
      +  "2:3",
      +  "3:2",
      +  "1:1",
      +  "16:9",
      +  "9:16",
      +  "auto"
      +]
    • addedInput schema / properties / callback_url
      Added value: +{
      +  "description": "Webhook URL for terminal Task delivery.",
      +  "type": "string"
      +}
    • addedInput schema / properties / duration_seconds
      Added value: +{
      +  "description": "Output duration in seconds.",
      +  "maximum": 30,
      +  "minimum": 6,
      +  "type": "number"
      +}
    • addedInput schema / properties / enable_safety_checker
      Added value: +{
      +  "description": "Enable content safety checks.",
      +  "type": "boolean"
      +}
    • changedInput schema / properties / model / enum
      Previous value: -[
      -  "grok-imagine-text-to-video"
      -]New value: +[
      +  "grok-imagine-text-to-video",
      +  "grok-imagine-video-1.5-fast",
      +  "grok-imagine-video-1.5-preview"
      +]
    • addedInput schema / properties / motion_style / description
      Added value: +"Video motion style."
    • removedInput schema / properties / motion_style / enum
      Removed value: -[
      -  "fun",
      -  "normal",
      -  "spicy"
      -]
    • addedInput schema / properties / output_resolution / description
      Added value: +"Output resolution."
    • addedInput schema / properties / prompt
      Added value: +{
      +  "description": "Video generation prompt.",
      +  "maxLength": 5000,
      +  "type": "string"
      +}
    • addedInput schema / properties / reference_image_urls
      Added value: +{
      +  "description": "Not accepted by this model.",
      +  "items": {},
      +  "type": "array"
      +}
    • addedInput schema / required
      Added value: +[
      +  "prompt"
      +]
  3. First observedv0.1.0

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It does state that it returns a task id, status, and output URLs, which hints at asynchronous task handling, but it does not mention the wait parameter, polling behavior, callback support, or any side effects (e.g., cost, rate limits). It also does not clarify that safety checks may be applied or that some parameters like reference_image_urls are not accepted by this model (though that is in the schema). This is insufficient for a tool with no annotations.

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

Conciseness5/5

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

The description is a single, focused sentence that states the tool's purpose and output in a compact way. It front-loads the most important information ('Create a Grok Imagine task on RunAPI (text to video)') and avoids any fluff. Every word earns its place, making it highly efficient.

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

Completeness2/5

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

Given the tool's complexity (12 parameters, 1 required, no output schema), the description is notably sparse. It does not explain how to use the tool effectively, such as whether the task is synchronous (the wait parameter), how to set up callbacks, or typical usage patterns. The rich schema partially compensates, but for an agent to call this correctly, it would need more context about the task lifecycle and the meaning of the returned status. The description is incomplete for a tool of this complexity.

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

Parameters3/5

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

Schema description coverage is 83%, which is high, so the baseline is 3. The description adds no additional meaning to the parameters beyond what the schema already provides; it does not highlight any parameter relationships or usage nuances. Since the schema covers most parameters, the description's lack of parameter detail is acceptable, but it also does not enrich understanding.

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

Purpose4/5

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

The description clearly states the action ('Create a Grok Imagine task') and the resource ('on RunAPI (text to video)'). It explicitly identifies the tool as text-to-video, which differentiates it from siblings like image_to_video and text_to_image. It also mentions what it returns. It could be more explicit about distinguishing from all siblings, but the core purpose is unambiguous.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention any context, prerequisites, or scenarios where this tool is preferred over e.g., image_to_video or extend_video. The intended usage is only implied by the name and description, with no explicit 'use this when...' or exclusions.

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