Skip to main content
Glama

Create a restore

create_restore

Start a cloud restore of an old video (tape, DVD, film scan, old phone clip): denoise, deinterlace, rebuild detail and upscale. Returns an upload_url; PUT the video there, then call start_restore. With an agent key it is paid from the balance now (pay_with 'balance'), and refunded to the balance if it fails. With pay_with 'checkout' (or no key) the user pays through a checkout link that start_restore returns. Up to 2 GB; standard up to 30 minutes, enhanced and studio_max up to 6 minutes.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
emailNoNeeded for pay_with 'checkout': where the receipt goes.
widthNoFrame width in pixels. Bigger frames cost more; the GPU checks the real file.
heightNoFrame height in pixels.
qualityNostandard: denoise, deinterlace, 2x upscale. enhanced: adds AI detail reconstruction, for badly degraded footage. studio_max: enhanced, delivered at up to 4K.enhanced
filenameYesThe video's file name, e.g. wedding-1994.mp4.
pay_withNoDefault: balance when this connection has a key, otherwise checkout.
size_bytesNoFile size in bytes, up to 2 GB.
content_typeYesThe video's MIME type, e.g. video/mp4.
duration_secondsYesLength in seconds. The GPU checks it; a file much longer than declared is refused and refunded.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / properties / height / description
      Added value: +"Frame height in pixels."
    • addedInput schema / properties / size_bytes / description
      Added value: +"File size in bytes, up to 2 GB."
    • addedInput schema / properties / width / description
      Added value: +"Frame width in pixels. Bigger frames cost more; the GPU checks the real file."
  2. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only declare the generic write profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false). The description adds substantial context beyond that: it returns an upload_url rather than performing the upload, charges are refunded to balance on failure, the GPU revalidates real file size/duration and refuses mismatched files, and there are hard caps (2 GB; 30 min standard, 6 min enhanced/studio_max).

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 purpose before workflow, payment, and limits, and every sentence carries information. It is dense and packs four distinct topics into one block, which slightly hurts scanability, but nothing is wasted.

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 9-parameter creation tool with no output schema, the description covers the full lifecycle: what is produced (an upload_url), the required follow-up call, both billing modes and the failure-refund behavior, and the size/duration limits the GPU enforces. An agent has enough to invoke it correctly without further context.

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 100%, so the baseline is 3, but the description adds a constraint not present in any parameter description: duration ceilings that differ by quality tier (standard 30 minutes vs enhanced/studio_max 6 minutes). The pay_with and 2 GB notes largely restate the schema, so it is a modest rather than large increment.

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?

States a specific verb and resource (start a cloud restore of an old video) plus the actual processing performed (denoise, deinterlace, rebuild detail, upscale). It clearly distinguishes itself from the sibling start_restore by describing itself as the step that returns an upload_url, and from quote_restore/get_restore by being the initiation step.

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 explicit sequencing guidance: PUT the video to the returned upload_url, then call start_restore. It also spells out the two payment paths (balance with an agent key vs checkout link returned by start_restore). It does not mention quote_restore as a pricing precondition or state when not to use it, so it stops short of 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.

Resources