Skip to main content
Glama

Complete asset upload

complete_asset_upload

Finish a two-step upload after the PUT: Growomat reads the stored file's real type, size, width and height and marks the asset READY. Fails with UPLOAD_MISSING if nothing has been uploaded yet, and marks the asset FAILED if the bytes are not an accepted image. Scoped to the active Space — see set_active_space to switch, or pass space_id to override for this one call.

Input Schema

NameRequiredDescriptionDefault
asset_idYesThe asset_id start_asset_upload returned.
space_idNoOverride the active Space for this one call. Defaults to the active Space set via set_active_space (or GROWOMAT_SPACE_ID on the server). Pass to read/write a different Space without changing the session binding.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.3/5.0
Behavior4/5

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

Annotations declare readOnlyHint=false and destructiveHint=false; the description goes well beyond that by disclosing the state transitions (READY on success, FAILED on invalid image) and the UPLOAD_MISSING failure mode. It stops short of describing idempotency or whether a FAILED asset can be retried, which are relevant for a completion step.

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?

Three sentences, all front-loaded: the action and sequencing first, then failure modes, then Space scoping. No filler and nothing an agent needs is buried.

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?

No output schema exists, yet the description explains what the call determines (type, size, width, height) and what result state is set, so an agent knows what to expect on return. Combined with 100% schema coverage, nothing material 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%, so baseline is 3. The description restates that asset_id scoping comes from the active Space and that space_id overrides it for one call, but this largely duplicates the schema text rather than adding new syntactic or format detail.

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 ('finish a two-step upload', 'marks the asset READY') and positions itself precisely in the upload sequence relative to start_asset_upload and upload_asset. An agent can distinguish it from all siblings 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?

Explicitly says to call it after the PUT, and names the alternative path for Space scoping (set_active_space vs. passing space_id). It does not state any when-not conditions, but the prerequisites for the call are unambiguous.

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