New Your team’s decisions, in one playbook every coding agent works from. Never answer your agent twice

files.upload_file

Reserve a direct upload slot for a local file or folder. Pass the desired file_name. For a single file, this becomes the stored name. For a folder, this becomes the destination folder prefix. To nest further, use a path in file_name (folder/subfolder/.../name). Optionally pass retention_days (def...

SERVERVee3 SOURCEhttps://mcp.vee3.io/mcp
Medium RISK CLASS
Category Write
Parameters 31 required
Recommended Rate-limitedsee the rule below
Registry record Grade F, identity unverified Pull the record →

This record as markdown: /tools/io-github-vee3io-vee3/files.upload-file.md

What files.upload_file does on Vee3

AI agents use files.upload_file to create or update resources in Vee3, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Vee3 environment.

ParameterTypeRequiredDescription
file_name string Yes Desired file name or path for the uploaded file. Use folder/subfolder/.../file_name to organize files in folders. Extension is optional and is replaced based on
existing_files object — What to do when a stored file already uses the same name. 'stop' (default) fails on the first duplicate. 'continue' skips duplicates and keeps uploading remaini
retention_days object — How many days to keep the file after upload completes. Default 7. Billing uses size and this retention.

Parameters from the server's own tool schema.

Why files.upload_file is rated Medium

Uploads files or folders to storage; reversible write operation with moderate blast radius.

From the tool's definition Reserve a direct upload slot for a local file or folder

Risk signalsAdmin/system-level operation

Questions about files.upload_file

What does the files.upload_file tool do? +

Reserve a direct upload slot for a local file or folder. Pass the desired file_name. For a single file, this becomes the stored name. For a folder, this becomes the destination folder prefix. To nest further, use a path in file_name (folder/subfolder/.../name). Optionally pass retention_days (default 7, minimum 1). The name may omit an extension. Vee3 returns an upload_code. Install the Vee3 CLI once with npm install -g @vee3/cli (requires Node 18+), then run vee3-upload {upload_code} {file_or_folder_path} in the terminal. The CLI accepts a file or a folder. A folder uploads every nested file in one command and stores each file under the reserved file_name prefix, preserving relative paths. The CLI resolves the code to signed upload URLs, streams the local file or files to Vee3 storage, and prints each stored file_name after the upload finishes. Use those file_name values in files.list_uploaded_files and other capabilities. The CLI does not need an API key. When a stored file already uses the same name, the upload stops, skips that file, or replaces it. 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. Each file can be up to 2 GB. One folder upload can include up to 500 files. Retention is chosen at reserve time (default 7 days) and applies to every file in the folder. After each upload is detected, Vee3 bills max(1, ceil(size_gibibytes * retention_days * 2)) tokens per file. Upload codes can be resolved within 60 minutes of reserve. Use files.list_uploaded_files to list stored uploads for follow-up work. Cost = 0 tokens to reserve. After upload completes, billing is max(1, ceil(size_gibibytes * retention_days * 2)) tokens. It is categorised as a Write tool in the Vee3 MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.

What parameters does files.upload_file accept? +

files.upload_file accepts 3 parameters: file_name, existing_files, retention_days. Required: file_name. The full parameter table on this page comes from the server's own tool schema.

How do I enforce a policy on files.upload_file? +

Register the Vee3 MCP server in PolicyLayer and add a rule for files.upload_file: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Vee3. Nothing to install.

What risk level is files.upload_file? +

files.upload_file is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.

Can I rate-limit files.upload_file? +

Yes. Add a rate_limit block to the files.upload_file rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.

How do I block files.upload_file completely? +

Set action: deny in the PolicyLayer policy for files.upload_file. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.

What MCP server provides files.upload_file? +

files.upload_file is provided by the Vee3 MCP server (https://mcp.vee3.io/mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.

More on Vee3, and thousands of servers like it.

// THE MCP REGISTRY

PolicyLayer tracks 44,603 MCP servers and 515,000+ tools.

Every server has a live record: who publishes it, whether it answers without auth, its risk grade, every tool classified, the recommended policy. This page is one line of Vee3's. Pull the full record:

Teams ship this data inside their own products. See what a licence covers →

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.