Skip to main content
Glama

Get export status

get_export
Read-only

Read a project's video export: its status and, once done, its link. Call it when the user asks for the link or the status, not to wait on an export you just started (the user gets that in the editor's Exports tab, so start it, say so, and stop). Pass exactly one of export_id (the one export_project returned) or project_id (that project's most recently REQUESTED export, which may still be in progress). Returns { export_id, project_id, status, progress, requested_at, finished_at? }.

status is queued, waitlisted or pending (not started yet), inprogress (progress is 0-100), completed, failed, or stalled (stuck for hours; start a new export). The call holds open until the export completes, fails or stalls, or wait_seconds runs out, then returns the current status. Don't call it in a loop: if it is still rendering, tell the user it is in progress and stop.

With project_id, a project that has never been exported returns status not_exported straight away (nothing to read): call export_project(project_id) if the user wants one.

Once completed, the reply carries download_url: a direct, time-limited link (1 hour, see expires_at) that downloads the file named after the project, e.g. "Product tour.mp4" (filename). Calling get_export again mints a fresh link.

An embed publish (export_project with destination="embed") also completes with embed_url (permanent) and embed_code (a ready-to-paste ), alongside its download_url.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
export_idNoThe export_id export_project returned. Omit when passing project_id.
project_idNoCheck this project's most recently requested export instead. Omit when passing export_id.
wait_secondsNoHow long to wait for the export to complete or fail before answering, default 50s. Pass 0 for an immediate status check (always, inside run_script).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / wait_seconds / description
      Previous value: -"How long to wait for the export to complete or fail before answering, default 45s. Pass 0 for an immediate status check."New value: +"How long to wait for the export to complete or fail before answering, default 50s. Pass 0 for an immediate status check (always, inside run_script)."
  2. Added

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare readOnly/non-destructive/openWorld=false, but the description goes well beyond: it discloses the blocking/long-poll behavior, that the call holds until completion/failure/stall or wait_seconds expires, the full status vocabulary, link expiry (1 hour via expires_at), fresh-link minting on repeat calls, and embed-specific return 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?

Purpose and the call/no-call rule are front-loaded, and the state machine, expiry, and embed details are parceled into distinct sentences. It is long, but the length is justified by genuinely non-obvious blocking and expiry behavior; a little more tightening would make it a 5.

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?

With no output schema, the description carries the return burden and does so: it names the response object fields and explains download_url, filename, expiry, and the embed_url/embed_code variants. An agent has everything needed to invoke and interpret the result.

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: exactly one of export_id or project_id, and that project_id resolves to the most recently REQUESTED export (which may still be in progress) rather than the newest finished one. It also reinforces wait_seconds semantics and the run_script rule.

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: reads a project's video export status and, once done, its link. It distinguishes itself from the write-side sibling by naming export_project as the tool that starts the export and by returning a concrete field set.

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?

Gives explicit when-to-call (user asks for the link or status), when-not (not to wait on an export just started), anti-patterns (don't call in a loop), and the alternative action for the no-export case (call export_project). Routing to and away from siblings is fully specified.

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.