Skip to main content
Glama

AwesomeVideo

Resume a failed caption job

resume_job
Idempotent

Restart a failed job (caption_video, transcribe, create_clips, dub_video, trim/remove_silences, generate_metadata) from where it stopped. Long transcriptions are saved chunk by chunk (30 s pieces), so the resumed job transcribes only the missing chunks and you pay the original price minus the transcription minutes already done (1 credit/min). For caption_video a finished transcript (and translation) is reused, so usually only the burn is charged (4 credits/min). The failed job stays fully refunded. Idempotent: calling again returns the same resumed job, never a second charge. Returns a new job id; poll get_job. Example: resume_job {"jobId":""}. 422 resume_not_supported / resume_media_expired (charged:false): call the original tool again. 409 job_not_resumable with reason no_speech (charged:false): no speech was detected, so a resume would give the same result (transcribe jobs with no speech finish as succeeded with result.noSpeech:true and cost 0; caption/clips/metadata fail with error no_speech and resumable:false).

Input Schema

NameRequiredDescriptionDefault
jobIdYesId of the failed caption_video job.
maxCreditsNoRefuse if resuming would cost more than this.
webhookUrlNo
notifyEmailNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Goes far beyond the annotations: it discloses chunk-level billing (1 credit/min, only missing 30s chunks charged), that a finished transcript/translation is reused so caption_video usually only pays the 4 credits/min burn, that the failed job stays fully refunded, and that calls are idempotent with no second charge (confirming idempotentHint). It also names the error codes and whether they are charged, which an agent cannot infer from structured fields.

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?

The purpose and resumable-job list are front-loaded, and the pricing/idempotency/error details follow in a logical sequence. The no_speech parenthetical is quite dense and slightly over-elaborate, but nearly every sentence carries actionable information.

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

Completeness4/5

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

Covers the return value indirectly ('Returns a new job id; poll get_job'), error codes, billing implications, and idempotency despite no output schema. The remaining gap is the unexplained webhookUrl/notifyEmail parameters, which is minor given the overall richness.

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 coverage is 50%: jobId and maxCredits are documented in the schema, while webhookUrl and notifyEmail are undocumented in both places. The description adds an example call and enough billing context to make maxCredits meaningful, but it never explains the webhook/email parameters, so it only partially compensates for the coverage gap.

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 ('Restart') and resource ('a failed job'), enumerates exactly which job types are resumable (caption_video, transcribe, create_clips, dub_video, trim/remove_silences, generate_metadata), and clearly differs from siblings like get_job or caption_video. An agent can immediately tell this is the recovery path, not the creation path.

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?

Explicit when-to-use (a failed job) plus concrete routing for edge cases: 422 resume_not_supported/resume_media_expired means call the original tool again, and 409 job_not_resumable with reason no_speech explains that a resume would reproduce the same failure. These are genuine alternatives, not vague hints.

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