Skip to main content
Glama

List Saved Assets

list_saved_assets
Read-onlyIdempotent

List saved assets in the workspace. Filter by category (STRATEGY, IDEAS, COPY, VISUALS, MOTION, BRIEFS), by one or more formats inside the category (e.g. COPY + formats=["ad-script","hook"]), by tags (any/all), by brand_id, by brief_id (PowerSource), by created_by ("me" resolves to caller via OAuth), or favorites_only. Returns the unified view that backs the /assets page — BRIEFS rows come from creator_briefs with share URLs; other categories come from saved_assets. Use BEFORE asking the user what to pull into a Heist. Free, read-only, paginated.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tagsNoTag filter. Default mode is `any` (OR). Switch to `all` with tags_mode.
limitNoPage size. Default 50, max 200.
cursorNoPagination cursor returned as next_cursor on the previous page.
searchNoFull-text search on title + body + tags.
formatsNoMulti-select format pills within a category. e.g. for COPY: ["ad-script","hook"]. See save_asset description for the full per-category enum.
brand_idNoLimit to one brand.
brief_idNoLimit to one PowerSource (brief).
categoryNoTab filter. STRATEGY (positioning, brand platform), IDEAS (hooks, concepts, territories), COPY (ad scripts, hooks, campaign copy), VISUALS (static ads, product, lifestyle imagery), MOTION (talking heads, b-roll, lifestyle video), BRIEFS (creator briefs — backed by a separate table; reads include share URLs). Omit to read every category in one merged stream.
tags_modeNoHow to combine tags. Default `any` (overlap). `all` requires every tag.
created_byNoUser id or the literal "me". When called via OAuth, "me" resolves to the caller. API-key callers MUST pass an explicit user id (no caller identity).
favorites_onlyNoRestrict to favorited assets only.

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint. The description adds 'Free, read-only, paginated' and explains the data source difference for BRIEFS (creator_briefs with share URLs) vs other categories (saved_assets). No contradictions.

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?

Description is longer due to comprehensive parameter explanations, but it is front-loaded with the core purpose. Every sentence provides useful information for an 11-parameter tool. Could be slightly trimmed but earned its length.

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

Completeness4/5

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

Given the complexity (11 params, no output schema), the description adequately describes the unified view, pagination, and data source differences. Annotations cover safety and idempotency. The lack of explicit return value info is mitigated by explaining what the tool backs.

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 baseline is 3. The description adds value by explaining the interaction of category and formats ('e.g. COPY + formats=["ad-script","hook"]') and clarifying created_by resolution for OAuth. This extra context justifies a 4.

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?

Description clearly states 'List saved assets in the workspace' and enumerates specific filtering options. It distinguishes itself from siblings by mentioning the unified view backing the /assets page and the specific use case 'Use BEFORE asking the user what to pull into a Heist.'

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?

Provides explicit context: 'Use BEFORE asking the user what to pull into a Heist' and explains the split between BRIEFS and other categories. Does not include explicit when-not-to-use or alternatives, but the sibling list suggests there are other asset-specific tools.

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

A3.7/5.0
Disambiguation4/5

Despite the high tool count, most tools have distinct purposes with thorough descriptions that specify when to use each. Some overlap exists among creative direction tools (call_creative_worlds vs chat_with_creative_worlds), but the descriptions clarify usage patterns.

Naming Consistency3/5

Naming conventions are inconsistent overall: some follow verb_noun (create_powersource_url, decode_ad), others use noun_verb or compound names (adformula_intelligence, fleet_analytics_overview). However, subgroups like dispatch_* and list_*_presets maintain internal consistency.

Tool Count2/5

112 tools is far beyond the typical 3-15 range for well-scoped servers. While the server covers a broad domain, the sheer number likely overwhelms agents and suggests insufficient consolidation of related operations.

Completeness4/5

The tool set covers core creative intelligence workflows: brand analysis, ad decoding, script generation, creative direction, and research. Minor gaps exist (e.g., no social media publishing tools), but the main use cases are well-supported.