Skip to main content
Glama

files.download_file

Reserve a direct download for a previously uploaded file.

Pass the file_name from files.list_uploaded_files (paths such as folder/subfolder/name.ext are supported). Vee3 returns a download_code.

Install the Vee3 CLI once with npm install -g @vee3/cli (requires Node 18+), then run vee3-get-file {download_code} ./path/to/save in the terminal. The CLI does not need an API key.

If installation fails with a TLS or certificate error (common on networks that inspect HTTPS traffic), use Node 22.15 or newer and run with NODE_OPTIONS=--use-system-ca, or configure npm to trust your network's root certificate.

Download codes can be resolved within 60 minutes of reserve.

Cost = 0 tokens.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
file_nameYesRelative file name or path to download. Use files.list_uploaded_files to see available names.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
commandNoSuggested terminal command for downloading to a local path.
file_nameNoStored file name.
expires_atNoISO 8601 timestamp when the download code can no longer be resolved (60 minutes after reserve).
size_bytesNoObject size in bytes when known.
download_idNoStable identifier for the reserved download.
content_typeNoMIME type on the stored object when known.
download_codeNoShort code to pass to the @vee3/get-file CLI.
install_commandNoOne-time command to install the Vee3 CLI (`npm install -g @vee3/cli`). On networks that inspect HTTPS, install may require Node 22.15+ with NODE_OPTIONS=--use-system-ca.
troubleshootingNoWhat to do if installation or downloading fails: re-read this tool's description via meta-tools.describe for setup and troubleshooting steps.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

With no annotations, the description fully discloses the behavioral workflow: it returns a download_code, requires the Vee3 CLI to actually retrieve the file, describes the 60-minute expiration, Node.js requirements, cost, and even troubleshooting for TLS/certificate errors. This is exemplary transparency.

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?

The description is moderately long but well-structured, with each sentence serving a purpose: purpose, parameter guidance, CLI usage, troubleshooting, expiration, and cost. The troubleshooting section adds length but is genuinely useful, so it earns its place.

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?

The description covers the entire workflow: reserving the download, obtaining the code, using the CLI to save the file, the 60-minute validity, prerequisites (Node 18+), cost, and common failure modes. Even with an output schema, all necessary contextual guidance is provided.

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% and the schema already defines file_name as a relative path. The description adds value by explicitly pointing to files.list_uploaded_files for available names and clarifies that paths like folder/subfolder/name.ext are supported, reinforcing and slightly expanding the schema semantics.

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?

The description clearly states the tool's function: 'Reserve a direct download for a previously uploaded file.' It uses a specific verb and resource, and the reference to files.list_uploaded_files differentiates it from siblings like upload_file, delete_file, and move_file.

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?

It clearly implies when to use (for previously uploaded files) and instructs to get the file name from files.list_uploaded_files. It doesn't explicitly list exclusions or alternatives, but the usage context is strong enough to avoid confusion with sibling file 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.