Skip to main content
Glama

Prepare upload

prepare_upload

Get a one-hour URL to PUT a local image, video, audio or text file to. Send exactly the returned headers, then call complete_upload with the fileKey.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sizeYes
filenameYes
mimeTypeYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations only declare it is not read-only/idempotent/destructive, which is thin; the description adds real behavior — the URL expires in one hour, the returned headers must be sent verbatim, and a fileKey is produced for complete_upload. It does not mention auth requirements or what happens to the URL if unused, so it stops 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?

Two tight sentences; the primary action (get a URL) comes first and the follow-up step second. Every clause carries information and none is redundant.

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

Completeness3/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 partially covers the return value (URL, headers, fileKey) but does not explain response structure or error modes. Combined with zero parameter documentation and a required size limit, an agent still has gaps before calling it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% and the description says nothing about filename, mimeType, or size — notably the large positive-integer size ceiling and string length limits are never surfaced. The 'image, video, audio or text file' phrasing loosely hints at accepted mimeTypes but adds no real constraint 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 (Get) and resource (a one-hour URL to PUT a file to), with accepted file types named. It is clearly the initiation step of a two-phase upload, distinguishable from complete_upload and the workflow siblings.

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 routes the agent forward: 'then call complete_upload with the fileKey' and mandates sending the returned headers exactly. It doesn't state conditions where this tool should not be used or how it relates to other siblings, but the sequencing guidance is concrete.

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