Skip to main content
Glama

List uploads

list_video_uploads
Read-only

Lists the user's uploads across accessible workspaces, most recent first. Returns id, workspace_id, filename, content_type (video, image, text, or carousel), folder_id, and created_at. Carousels also have carousel_items: each image or video in order, with its video_upload_id, original filename, content_type and 0-based position. Those items are uploads too, so they also appear in the list on their own. Pass content_type: 'carousel' to list only carousels. Results come in pages: while next_cursor isn't null there are more uploads, so call again with the same filters and cursor set to it. Use this to find a video_upload_id before calling create_post_draft or a scheduling tool.

Input Schema

NameRequiredDescriptionDefault
limitNoMaximum number of uploads to return (default 20, max 100).
cursorNo`next_cursor` from the previous page. Keep the other parameters the same.
content_typeNoOnly uploads of this type: video, image, text or carousel.
workspace_idNoRestrict results to a single workspace. Omit to include uploads from every workspace the user belongs to.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / content_type
      Added value: +{
      +  "description": "Only uploads of this type: video, image, text or carousel.",
      +  "type": "string"
      +}
    • addedInput schema / properties / cursor
      Added value: +{
      +  "description": "`next_cursor` from the previous page. Keep the other parameters the same.",
      +  "type": "string"
      +}
  2. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare readOnlyHint and non-destructive, and the description goes well beyond them: it discloses sort order (most recent first), cross-workspace default scope, the exact pagination contract (loop while next_cursor is non-null, reuse the same filters), and a subtle non-obvious trait — carousel sub-items are themselves uploads and therefore appear again as standalone list entries.

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?

Front-loaded with purpose, then returns, then carousel nuance, then pagination, then the recommended next step — a sensible order with no filler. It is on the denser side, but nearly every clause carries usable 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?

With no output schema, the description compensates by enumerating returned fields and the nested carousel_items structure, and it fully specifies the pagination loop. For a read-only, four-optional-parameter list tool, nothing an agent needs to call it correctly or interpret results is 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 100%, so the baseline is 3; the description still adds operational meaning, showing how content_type 'carousel' should be used and that cursor paging requires keeping other filters identical. It adds less for limit and workspace_id, which the schema already explains.

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 opens with a specific verb and resource ('Lists the user's uploads across accessible workspaces, most recent first') and immediately names the returned fields, so an agent can distinguish it from creation tools like create_video_upload or list_folders without opening the schema.

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?

It gives a concrete triggering scenario — 'Use this to find a video_upload_id before calling create_post_draft or a scheduling tool' — and explains how to filter to carousels only. It does not state when to prefer a sibling listing tool (e.g., list_folders, list_import_items) or note any exclusions, so it falls short of full when/when-not guidance.

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.