Skip to main content
Glama

viral_remix

Take a viral video and produce a fresh script that mirrors its structure and energy pattern for a new topic. Returns the extracted formula, scene-by-scene script with voiceover and visuals, camera directions, and text overlays. Use when the user finds a video they want to replicate the structure of. Pass either a video URL (TikTok, YouTube, or Instagram) or a transcript directly. When promoting a specific product, ALWAYS pass target_product + verified_product_facts so the generator does not fabricate product details.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nicheNoOptional niche hint
my_topicNoDEPRECATED alias for target_topic. Legacy clients only. Normalized internally.
platformNoTarget platform for the remix. Adjusts pacing and CTA style if provided.
source_urlNoTikTok/YouTube/Instagram URL — transcript will be auto-extracted
transcriptNoPre-extracted transcript (alternative to source_url, faster)
target_topicNoWhat the remix should be about. Default: same niche as original.
target_productNoThe product the remix should promote. When provided, the generator will NOT invent product names, prices, timelines, features, or customer stories. Combined with verified_product_facts, this forces on-topic + grounded output.
verified_product_factsNoFacts the generator is allowed to cite about target_product (e.g. "runs inside ChatGPT and Claude", "14 tools for viral research"). Every specific product claim in the generated script is checked against this list — unsupported claims populate unsupported_claims[] and downgrade quality. If target_product is passed WITHOUT verified_product_facts, the response will land at degraded quality (generation cannot be grounded).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
overlaysNoText overlay suggestions per scene
from_paygNoWhether credits came from pay-as-you-go balance
verify_hookNoThe hook plus a suggested follow-up: the caller may pass it to score_hook for a structurally-independent score (the script generator deliberately does NOT self-rate). Informational only, not an instruction to call anything.
camera_shotsNoPhone-native camera direction per scene
fresh_scriptNoComplete scene-by-scene script mirroring the source structure
cta_archetypeNoWhich CTA archetype the generator picked. Comment_gate is the failure-mode default for AI script generators; rotation tells you whether the prompt is working.
ugc_authenticityNoTripwire for ad-shaped drift. Detected via regex on the produced script, not the model self-grade. If level=ad_leaning, surface to the user before shipping.
credits_remainingNoCredits remaining after this call
extracted_formulaNoThe viral DNA formula extracted from the source
from_subscriptionNoWhether credits came from subscription
structural_skeletonNoWhich structural skeleton the generator used (confession_to_result, mistake_to_correction, etc). Surfaces rotation across the fleet.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / verified_product_facts / description
      Previous value: -"Facts the generator is allowed to cite about target_product (e.g. \"runs inside ChatGPT and Claude\", \"12 tools for viral research\"). Every specific product claim in the generated script is checked against this list — unsupported claims populate unsupported_claims[] and downgrade quality. If target_product is passed WITHOUT verified_product_facts, the response will land at degraded quality (generation cannot be grounded)."New value: +"Facts the generator is allowed to cite about target_product (e.g. \"runs inside ChatGPT and Claude\", \"14 tools for viral research\"). Every specific product claim in the generated script is checked against this list — unsupported claims populate unsupported_claims[] and downgrade quality. If target_product is passed WITHOUT verified_product_facts, the response will land at degraded quality (generation cannot be grounded)."
  2. Changed1 schema field changed
    • changedInput schema / properties / verified_product_facts / description
      Previous value: -"Facts the generator is allowed to cite about target_product (e.g. \"runs inside ChatGPT and Claude\", \"9 tools for viral research\"). Every specific product claim in the generated script is checked against this list — unsupported claims populate unsupported_claims[] and downgrade quality. If target_product is passed WITHOUT verified_product_facts, the response will land at degraded quality (generation cannot be grounded)."New value: +"Facts the generator is allowed to cite about target_product (e.g. \"runs inside ChatGPT and Claude\", \"12 tools for viral research\"). Every specific product claim in the generated script is checked against this list — unsupported claims populate unsupported_claims[] and downgrade quality. If target_product is passed WITHOUT verified_product_facts, the response will land at degraded quality (generation cannot be grounded)."
  3. Changed5 schema fields changed
    • changedInput schema / properties / my_topic / description
      Previous value: -"What the remix should be about. Default: same niche as original."New value: +"DEPRECATED alias for target_topic. Legacy clients only. Normalized internally."
    • addedInput schema / properties / platform
      Added value: +{
      +  "description": "Target platform for the remix. Adjusts pacing and CTA style if provided.",
      +  "enum": [
      +    "tiktok",
      +    "reels",
      +    "shorts"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / target_product
      Added value: +{
      +  "description": "The product the remix should promote. When provided, the generator will NOT invent product names, prices, timelines, features, or customer stories. Combined with verified_product_facts, this forces on-topic + grounded output.",
      +  "type": "string"
      +}
    • addedInput schema / properties / target_topic
      Added value: +{
      +  "description": "What the remix should be about. Default: same niche as original.",
      +  "type": "string"
      +}
    • addedInput schema / properties / verified_product_facts
      Added value: +{
      +  "description": "Facts the generator is allowed to cite about target_product (e.g. \"runs inside ChatGPT and Claude\", \"9 tools for viral research\"). Every specific product claim in the generated script is checked against this list — unsupported claims populate unsupported_claims[] and downgrade quality. If target_product is passed WITHOUT verified_product_facts, the response will land at degraded quality (generation cannot be grounded).",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
  4. Changed1 schema field changed
    • changedOutput schema / properties / verify_hook / description
      Previous value: -"Hook + instruction to chain into score_hook for a structurally-independent score (the script generator deliberately does NOT self-rate)"New value: +"The hook plus a suggested follow-up: the caller may pass it to score_hook for a structurally-independent score (the script generator deliberately does NOT self-rate). Informational only, not an instruction to call anything."
  5. Changed5 schema fields changed
    • addedOutput schema / properties / cta_archetype
      Added value: +{
      +  "description": "Which CTA archetype the generator picked. Comment_gate is the failure-mode default for AI script generators; rotation tells you whether the prompt is working.",
      +  "enum": [
      +    "result_close",
      +    "soft_bio_pointer",
      +    "genuine_question",
      +    "pinned_comment",
      +    "comment_gate"
      +  ],
      +  "type": "string"
      +}
    • removedOutput schema / properties / hook_score
      Removed value: -{
      -  "description": "Self-rated hook quality score (0-100)",
      -  "type": "number"
      -}
    • addedOutput schema / properties / structural_skeleton
      Added value: +{
      +  "description": "Which structural skeleton the generator used (confession_to_result, mistake_to_correction, etc). Surfaces rotation across the fleet.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / ugc_authenticity
      Added value: +{
      +  "description": "Tripwire for ad-shaped drift. Detected via regex on the produced script, not the model self-grade. If level=ad_leaning, surface to the user before shipping.",
      +  "properties": {
      +    "level": {
      +      "description": "Honest signal of whether the generator drifted ad-ward",
      +      "enum": [
      +        "native",
      +        "ad_leaning"
      +      ],
      +      "type": "string"
      +    },
      +    "reasons": {
      +      "description": "List of detected drift reasons (e.g. \"hook is 22 words\", \"CTA is comment-gate\")",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedOutput schema / properties / verify_hook
      Added value: +{
      +  "description": "Hook + instruction to chain into score_hook for a structurally-independent score (the script generator deliberately does NOT self-rate)",
      +  "type": "object"
      +}
  6. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "camera_shots": {
      +      "description": "Phone-native camera direction per scene",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "credits_remaining": {
      +      "description": "Credits remaining after this call",
      +      "type": "number"
      +    },
      +    "extracted_formula": {
      +      "description": "The viral DNA formula extracted from the source",
      +      "type": "string"
      +    },
      +    "fresh_script": {
      +      "description": "Complete scene-by-scene script mirroring the source structure",
      +      "properties": {
      +        "cta": {
      +          "description": "Call-to-action closing",
      +          "type": "string"
      +        },
      +        "hook": {
      +          "description": "Opening hook line",
      +          "type": "string"
      +        },
      +        "scenes": {
      +          "description": "Scene-by-scene script with voiceover, visuals, and timing",
      +          "items": {
      +            "type": "object"
      +          },
      +          "type": "array"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "from_payg": {
      +      "description": "Whether credits came from pay-as-you-go balance",
      +      "type": "boolean"
      +    },
      +    "from_subscription": {
      +      "description": "Whether credits came from subscription",
      +      "type": "boolean"
      +    },
      +    "hook_score": {
      +      "description": "Self-rated hook quality score (0-100)",
      +      "type": "number"
      +    },
      +    "overlays": {
      +      "description": "Text overlay suggestions per scene",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "type": "object"
      +}
  7. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Annotations only cover safety (not read-only, open-world, non-idempotent, non-destructive). The description goes well beyond that: it discloses that the generator will not invent product names, prices, timelines, features, or customer stories, and that omitting verified_product_facts causes degraded output. That is substantive behavioral disclosure an agent cannot infer from the annotation block.

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?

Purpose and output are front-loaded in the first two sentences, then the trigger condition, then the parameter rules. Five sentences, each carrying distinct information with no filler.

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?

With an output schema present the description need not spell out returns, yet it still previews them briefly. Together with annotations carrying the safety profile and 100% schema coverage, an agent has everything needed to select and call this correctly.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3. The description still adds value by stating the either/or input contract in prose and by elevating the target_product + verified_product_facts pairing to an ALWAYS rule, which reinforces the grounding semantics beyond the schema's per-field wording.

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?

States a specific verb+resource ('take a viral video and produce a fresh script that mirrors its structure and energy pattern for a new topic') and enumerates the deliverables, so the agent knows exactly what comes out. It does not name or differentiate from close siblings like find_viral_template or brief_to_blueprint, which an agent might plausibly confuse this with.

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

Usage Guidelines4/5

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

Gives a clear triggering context ('when the user finds a video they want to replicate the structure of') and an explicit input-mode rule (URL or transcript). It also mandates target_product + verified_product_facts for product promotion. No when-not guidance or named alternatives, so it stops short of a 5.

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.