Skip to main content
Glama

Move Flow media to the trash (two steps)

flow_trash

Moves project media to Flow's trash, where it stays restorable. Previews items and returns a confirmation code first; call again with that code to complete the move.

Instructions

Moves project media to Flow's trash, where it can still be restored in Flow. Always two calls: first without confirmation, which only previews the items (title, type, what was made from them) and returns a confirmation code; show that list to the user and get their OK; then call again with the same media_ids and that code. The code only works for exactly the previewed set. To clean up repeated uploads use duplicateUploads from flow_assets.

Input Schema

NameRequiredDescriptionDefault
media_idsYes
project_idYes
confirmationNoThe code from the preview, after the user agreed

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.0

TDQS

A4.6/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses the mandatory preview-then-confirm sequence, that the confirmation code is bound to exactly the previewed set, and that trashed media remains restorable in Flow. It omits permission/auth requirements and any limits on how long items stay recoverable, which keeps it short of a 5.

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?

Effectively front-loaded — the destructive scope and restorability land in the first clause, then the two-call protocol, then the alternative tool. Every sentence adds a distinct operational fact with no filler.

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?

There is no output schema, and the description helpfully describes what the preview returns (title, type, what was made from them) plus the confirmation code. It doesn't cover failure behavior (e.g. mismatched set or expired code) or what happens to the trash afterward, but for a three-parameter tool it is nearly complete.

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 description coverage is 33%, so the description must compensate, and it does for the critical undocumented parameter: it explains that 'confirmation' is the code returned by the preview and that media_ids must be identical between calls. project_id is left entirely unexplained, which is the main remaining gap.

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 ('Moves project media to Flow's trash') and immediately qualifies the outcome ('where it can still be restored'). It also distinguishes this cleanup path from the sibling route by naming duplicateUploads from flow_assets, so an agent can choose without opening another schema.

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 an explicit when-to-use protocol: the first call is preview-only, the second requires the user's OK and the matching code. It also names the alternative tool (duplicateUploads from flow_assets) for the repeated-upload case, so both the main path and the escape hatch are covered.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.