Skip to main content
Glama

List media library

list_media
Read-onlyIdempotent

[read] List the workspace's media library (images, video and audio added or generated), newest first; filter by kind or name. Use to find a file to place. Not for motion graphics (use list_assets). Returns each item's id (for the TIMELINE: add_timeline_clip({ assetId: id })) and its timelineSrc, total and next_page. Related: add_timeline_clip, search_media, get_asset_metadata.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "project_id": "<project_id>"
    },
    "name": "list_media"
  }
}

Input Schema

NameRequiredDescriptionDefault
kindNoOnly this kind.
pageNo1-based page of 50, newest first (default 1).
searchNoName contains (any case).
project_idYesThe AskEditor project this acts on (from list_projects).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent and non-destructive, so the safety profile is covered. The description adds non-annotation context: result ordering (newest first) and the exact payload shape returned (id, timelineSrc, total, next_page), which matters because no output schema exists. It stops short of stating page size or rate/limit behavior, but the essentials are disclosed.

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 the core action and scope, then use-case, exclusion and return info in short clauses. It is dense but every clause carries routing or return-value value; the trailing 'Related:' list is the only mildly redundant part.

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 naming the returned fields (id, timelineSrc, total, next_page) and shows how the id feeds add_timeline_clip. Combined with 100% schema coverage for params and annotations for safety, nothing an agent needs to call this correctly is missing.

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%, including enum values for kind and the 'page of 50, newest first' note, so the schema does the heavy lifting. The description's 'filter by kind or name' merely paraphrases those parameters and adds no syntax, matching rules, or defaults beyond what is already documented.

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?

Specific verb+resource ('List the workspace's media library') with scope (images, video, audio), ordering (newest first) and filtering (kind or name). It explicitly distinguishes itself from list_assets and points at search_media as a related sibling, so an agent can select it without reading schemas.

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 a concrete use case ('Use to find a file to place'), an explicit exclusion ('Not for motion graphics (use list_assets)'), and names related tools for downstream/alternative actions. Both when-to-use and when-not-to-use are stated.

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