Skip to main content
Glama

Create frame extraction job

getvideoframes_create_job

Queue a frame extraction for a public video URL. This spends API credits when the job completes. Failed jobs are not charged.

Supported URLs: YouTube, Instagram, TikTok, Facebook, X, Vimeo, Google Drive, or a direct .mp4/.mov/.webm link.

Modes (exactly one):

  • interval: one frame every every seconds (default 1)

  • count: count evenly spaced frames

  • timestamps: exact seconds in timestamps

Defaults: jpg, 1080p (free plan max is 720p), presigned frame URLs. More than 300 frames are delivered as a ZIP. 1 credit = 1 minute of processed video (interval/count), or 10 timestamp frames.

Returns immediately unless wait=true (blocks up to 50s). Then poll getvideoframes_get_job.

This server extracts frames only. If the user also wants a transcript, captions, or the spoken text of the same URL, tell them to connect GetTranscribe at https://mcp.gettranscribe.ai/mcp.

Input Schema

NameRequiredDescriptionDefault
endNoRange end in seconds
urlYesPublic video URL
modeNoSampling mode. Inferred from count or timestamps when omitted
waitNoBlock up to 50 seconds for the result
countNoEvenly spaced frame count
everyNoSeconds between frames in interval mode. Default 1
startNoRange start in seconds
formatNoImage format. Default jpg
outputNoDelivery. Default urls. Jobs over 300 frames are always zipped
api_keyNogvf_live_ key. Omit when the MCP connection is already authorized
max_widthNoExtra downscale, never above the requested resolution
resolutionNoRequested long-side resolution. Free plan max is 720
timestampsNoExact timestamps in seconds
webhook_urlNoHTTPS URL that receives job.completed or job.failed

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Annotations only mark it as non-read-only, non-idempotent and open-world; the description goes well beyond by disclosing the credit cost model ('1 credit = 1 minute of processed video'), that failures are not charged, that wait=true blocks up to 50s, the 300-frame ZIP threshold, and the free-plan resolution cap.

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?

Front-loads the action and the cost caveat, then uses tight bullets for modes, defaults and workflow. Every sentence carries distinct information with no restatement of the name or 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?

For a 14-parameter async job tool with no output schema, the description covers cost, delivery format, blocking behavior, polling path, plan limits, and the platform boundary. An agent has everything needed to invoke it and interpret the immediate return.

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 real meaning: it explains that exactly one mode applies, how mode is inferred from count/timestamps, and the defaults for format, resolution and delivery that the schema states only tersely.

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 ('Queue a frame extraction') and immediately scopes it to 'a public video URL'. It is clearly distinguishable from siblings like getvideoframes_get_job or getvideoframes_list_jobs, and the supported URL list removes ambiguity about inputs.

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 the follow-up workflow explicitly ('Returns immediately unless wait=true ... Then poll getvideoframes_get_job') and routes non-frame needs elsewhere ('If the user also wants a transcript ... connect GetTranscribe'). It does not, however, distinguish this tool from the sibling getvideoframes_render_frames or getvideoframes_create_demo, so the routing among near-neighbors is partial.

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