Skip to main content
Glama

MakeViral

Make a trend video or photo

run_template
Destructive

Make a MakeViral trend video or photo from the user's photos. It spends the version's credits from the user's MakeViral account (a failed run gives them all back). A photo is usually ready in this call and the result has the link. A video takes a few minutes: then call get_run with wait true until it is ready, and give the user the link. Before calling: 1) pick the template and version with get_template, 2) tell the user the price in credits, 3) ask for exactly the photos that version needs, in its order, 4) ask the user to confirm the people in the photos are them or people who agreed, and that no one in them is a child. Photos: pass the files the user attached in this chat as photos, OR public image links as photoUrls, OR an uploadId from create_upload_link when the user cannot attach files here. Never use photos of a public figure or of someone who did not agree.

Input Schema

NameRequiredDescriptionDefault
fieldsNoOptional 'make it yours' values by field id (get_template lists them)
objectNoKnight sword swap only: the object one knight hands the other
photosNoThe user's photos attached in the chat, in the version's photo order
qualityNoQuality option id from get_template. Default: the template's default option (listed first).
versionNoVersion id from get_template. Default 'main'.
templateYesTemplate slug, e.g. 'knight-cat-ai-video'
uploadIdNoThe id from create_upload_link, after the user added the photos there
photoUrlsNoPublic https links to the photos (JPEG, PNG or WebP), in the version's photo order
requestIdNoOptional id (8-64 letters, digits, - or _). The same id never charges twice. Without it, the same request within 10 minutes returns the first run; pass a new id to make it again with the same photos.
photosConsentYestrue only after the user confirmed that everyone in the photos is the user or agreed to it, and that no one is a child

Output Schema

NameRequiredDescriptionDefault
runYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Goes well beyond the annotations: it discloses credit spend and refund on failure, that the result carries a link, and that videos are asynchronous and need polling. Minor gap is that it does not quantify cost or describe what a failed run reports back, though the output schema covers returns.

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

Conciseness4/5

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

Front-loaded with the core action and timing, then a numbered prerequisite checklist that earns its place. The closing sentence on public figures and consent slightly repeats the earlier consent requirement, but overall density is high.

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?

For a destructive, costly, 10-parameter tool with nested objects, the description covers preconditions, consent/legal constraints, credit implications, input alternatives, and async polling behavior. Return values are covered by the output schema, so nothing essential is missing.

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 coverage is already 100%, so the baseline is 3; the description adds real meaning by explaining that photos must be in the version's photo order and that photoUrls/uploadId are alternative sources. It does not add information on fields, object, quality, or version beyond what the schema already carries.

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 ('Make a MakeViral trend video or photo from the user's photos') and anchors it to templates/versions and credits. It does not explicitly contrast itself with siblings like create_image or create_video, so the agent must infer which creation path to take.

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?

Gives an explicit pre-call sequence (get_template, quote price, collect photos in version order, confirm consent) and a post-call branch: photo returns inline, video requires polling get_run with wait=true. It also names the three mutually exclusive photo input methods (photos / photoUrls / uploadId) with the condition selecting each.

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