Skip to main content
Glama

AwesomeVideo

Create upload URL

create_upload

Free. Get a fileId and a single-use PUT URL (valid 15 minutes, tied to this key or account) for a local video or audio file, e.g. one the user attached in chat. Checks size first: one PUT takes up to 80 MB; bigger files (up to 2048 MB) return 422 use_multipart_upload: call create_multipart_upload instead. Then PUT the raw bytes (not multipart) with the returned headers, e.g. curl -X PUT --data-binary @clip.mp4 -H "Content-Type: video/mp4" "", and pass fileId to plan, quote, transcribe, burn_captions, shorts, trim, dub, or preview. No API key is needed for the PUT itself. Up to 30 per hour.

Input Schema

NameRequiredDescriptionDefault
filenameYesFile name, e.g. clip.mp4.
sizeBytesYesExact file size in bytes (the PUT must match).
contentTypeYesvideo/* or audio/*, e.g. video/mp4.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Adds substantial behavior beyond the annotations: the URL is single-use, expires in 15 minutes, is tied to the key or account, and the PUT needs no API key. It also discloses the 80 MB/2048 MB thresholds, the 422 use_multipart_upload error, the 30-per-hour rate limit, and that the PUT must be raw bytes with matching size and headers.

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 description front-loads the core promise (free, fileId plus single-use PUT URL) and then packs thresholds, error path, example command, downstream tools, and rate limit into a dense but waste-free paragraph. The single block is slightly run-on, but every sentence carries operational information.

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 three-parameter tool with no output schema, it covers the full workflow: create the upload, PUT the raw bytes with returned headers, and pass fileId to plan, quote, transcribe, burn_captions, shorts, trim, dub, or preview. The size-based failure path and rate limit leave nothing an agent needs 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 still adds consequences the schema does not: sizeBytes determines whether this endpoint succeeds or returns a 422 multipart redirect, and contentType must be the actual raw PUT Content-Type header rather than multipart.

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?

The description states a specific action and outputs: it returns a fileId and a single-use PUT URL for a local video/audio file. It distinguishes itself from the closest sibling by naming create_multipart_upload as the path for files over 80 MB, and its scope (local byte upload) separates it from upload_base64 and import_url.

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?

Usage is clearly framed: try this first, and if the file exceeds 80 MB (up to 2048 MB) the API returns 422 use_multipart_upload and you should call create_multipart_upload instead. It stops short of explicitly ruling out siblings like upload_base64 or import_url, so an agent still has to infer those alternatives.

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