Skip to main content
Glama

storage_get

Fetch Storage metadata and a download pointer (not the blob body).

Returns download_url for an authenticated GET of the bytes. When published and the bucket publisher is configured, also includes a fresh signed_url (presigned bucket GET; primary for agents) plus signed_url_expires_in / signed_url_expires_at. Durable share_url / public_url still point at /d/{share_token} (Storage's public raw-bytes route; distinct from shared-file /s/{slug}). Includes work_ids / project_ids for current attachments.

Input Schema

NameRequiredDescriptionDefault
file_idYesStorage object UUID

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.5/5.0
Behavior3/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 on return behavior: it discloses that only metadata plus a pointer is returned, that download_url needs an authenticated GET, that signed_url is conditional on publication and bucket publisher configuration, and that it carries an expiry. It does not state that the call itself is a read-only operation, nor what happens on missing/unauthorized file_id.

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 most important caveat (metadata and pointer, not bytes), then details the return shapes in descending priority. Some parenthetical nesting and backticked identifiers add visual noise, but every sentence conveys usable information.

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?

Returns are covered by an output schema, yet the description still usefully explains the semantics of download_url, signed_url, and share_url and their relationships. For a one-parameter read tool this is close to complete; only the read-only nature and failure modes are unstated.

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?

A single required parameter with 100% schema coverage ('Storage object UUID'), so the schema already fully documents it. The description adds no extra constraint or format detail about file_id, which is acceptable given the coverage but is not value-add.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening line states a specific verb and resource and immediately scopes the behavior: 'Fetch Storage metadata and a download pointer (not the blob body).' It also distinguishes the returned URL shapes from Storage's shared-file '/s/{slug}' route, though it never names a sibling tool (e.g. file_get or storage_list) to contrast with.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage guidance is indirect: 'signed_url ... primary for agents' tells the agent which returned URL to prefer, and the parenthetical rules out fetching bytes here. There is no explicit statement of when to call this versus file_get or when to call storage_list first to obtain a file_id.

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.