Skip to main content
Glama

Upload File

media_upload_file

Import a video, audio, or image file from ChatGPT into the BlitzReels media library. Use this for a file the user attached or picked, and for an image ChatGPT generated in this conversation that the user wants to keep, animate, or edit in BlitzReels.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fileYesA file from ChatGPT: attached by the user, picked from their file library, or produced earlier in this conversation. ChatGPT provides this value.
nameNoOptional name to use in BlitzReels.
projectIdNoOptional BlitzReels project ID to associate with the uploaded file. UUID string.
workspaceIdNoOptional workspace ID when projectId is not provided. Defaults to the user's default workspace. UUID string.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
mediaYes

TDQS

A3.7/5.0
Behavior2/5

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

Annotations provide no safety hints (readOnly=false, destructive=false, idempotent=false), so the description carries the burden. It only says 'import' and does not disclose behavioral details like whether the file is copied or moved, whether any processing occurs, or whether permissions are needed. The source and types are stated, but these align more with purpose than with behavior.

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?

The description is two clearly written sentences. The first sentence front-loads the action and target, and the second provides the exact use cases. No filler or redundancy.

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

Completeness3/5

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

The tool has an output schema and a moderately complex nested input, but the description leaves gaps: it doesn't mention how this differs from media_upload_start/finish, whether import is one-step, or any preconditions. It covers the main use scenarios but could be more complete regarding alternatives and side effects.

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 100%, so each parameter already has descriptions in the schema. The description adds context that the file must come from ChatGPT, which clarifies the 'file' parameter's origin, but it doesn't add much for name, projectId, or workspaceId beyond what the schema provides. This matches the baseline 3 for high schema coverage.

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 'Import a video, audio, or image file from ChatGPT into the BlitzReels media library.' This is a specific verb ('import') with a clear resource and target, and it distinguishes from sibling tools like media_import_url and media_upload_start by emphasizing the source is ChatGPT-attached/generated files.

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?

The description explicitly tells when to use this tool: for files the user attached or picked, and for ChatGPT-generated images the user wants to keep, animate, or edit. This provides clear context, though it doesn't explicitly name alternatives or exclusions (e.g., when to use media_import_url instead).

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.

TDQS

B3.1/5.0
Disambiguation3/5

Most tools use clear domain prefixes, but several boundaries are fuzzy: clips_get and clips_manage both expose clip/export status, and update_timeline_clip overlaps with timeline_edit_apply for trim/duration changes. Detailed descriptions mitigate this, but an agent could still select the wrong tool for clip inspection or timeline edits.

Naming Consistency3/5

All names are snake_case and mostly readable, but the server mixes verb-first names (add_text_overlay, delete_timeline_items, update_timeline_clip) with noun-first domain-action names (clips_create, generation_*_create, media_import_*). The domain-prefix pattern dominates, yet the inconsistent verb placement makes the convention only partially predictable.

Tool Count1/5

58 tools is far beyond the 25+ threshold and matches the rubric's 50+ extreme-mismatch example. Even though the domain is broad, this surface would be easier for an agent to navigate if split into focused servers for media, generation, timeline editing, clips, and workflows.

Completeness3/5

Core video-editing flows are well represented: project creation/inspection, timeline item editing/deletion, media import/upload, AI generation, exports, and clips. However, lifecycle gaps remain—no project update/delete, no media asset deletion, no delete for characters or story kits, and no export cancellation—so some user requests will dead-end.

Resources