

File Management
Storage
Available ActionsEach successful request consumes credits as outlined below.
upload_standard10crupload_large20crlistgetdownloaddeleteshare5craccess_historyupdate_metadata5crextend_expiration10cr
Details
Upload, list, retrieve, share, download, delete, and manage files stored in AgentPMT cloud storage. This product now owns the full file lifecycle, including signed upload URLs for files up to 10MB and for files over 10MB up to 100MB, budget-scoped file listing with preview URLs, fresh signed download URLs, direct base64 download for smaller files, password-protected sharing, metadata and tag updates, access-history inspection, and expiration extension. All file operations are scoped to the current budget for isolation and are designed to let one budget create persistent files that can be revisited across later agent runs.
Use Cases
Small file upload, large file upload, signed upload URL generation, temporary file hosting, budget-scoped file storage, file inventory, file preview listing, image preview retrieval, get file metadata, refresh signed URL, download file as base64, delete uploaded file, create password-protected file share, secure file delivery, metadata tagging, file organization, access audit trail, extend file expiration, AI agent file persistence, report delivery, export storage, dataset handoff, document sharing, cross-run file retrieval, chat attachment storage, automation workflow file output
Actions(10)
upload_standard10cr9 params(1 required)Generate a signed upload URL for a file up to 10MB. After receiving the URL, perform a PUT request with the exact file bytes and returned headers.
upload_standard10cr9 params(1 required)Generate a signed upload URL for a file up to 10MB. After receiving the URL, perform a PUT request with the exact file bytes and returned headers.
content_length_bytesrequiredintegerExact file size in bytes. Must match the Content-Length header on PUT. Range: 1-10485760 (10MB).
Range: 1 - 10485760
filenamestringOriginal filename including extension. If omitted, a filename is auto-generated.
content_typestringMIME type of the file. Default: application/octet-stream.
expiration_daysintegerDays until file expires and is automatically deleted (1-7). Default: 7.
Range: 1 - 7
sharedbooleanWhether the file should be shareable through a password-protected public URL.
password_max_usesintegerMaximum number of uses for the auto-generated share password (1-10). Only relevant when shared is true.
Range: 1 - 10
password_max_minutesintegerMinutes until the auto-generated share password expires (1-10). Only relevant when shared is true.
Range: 1 - 10
metadataobjectCustom metadata as key-value pairs to attach to the file.
tagsarrayTags for categorization.
Array of: string
upload_large20cr9 params(1 required)Generate a signed upload URL for a file over 10MB and up to 100MB. After receiving the URL, perform a PUT request with the exact file bytes and returned headers.
upload_large20cr9 params(1 required)Generate a signed upload URL for a file over 10MB and up to 100MB. After receiving the URL, perform a PUT request with the exact file bytes and returned headers.
content_length_bytesrequiredintegerExact file size in bytes. Must match the Content-Length header on PUT. File size must be over 10MB and up to 100MB.
Range: ... - 104857600
filenamestringOriginal filename including extension. If omitted, a filename is auto-generated.
content_typestringMIME type of the file. Default: application/octet-stream.
expiration_daysintegerDays until file expires and is automatically deleted (1-7). Default: 7.
Range: 1 - 7
sharedbooleanWhether the file should be shareable through a password-protected public URL.
password_max_usesintegerMaximum number of uses for the auto-generated share password (1-10). Only relevant when shared is true.
Range: 1 - 10
password_max_minutesintegerMinutes until the auto-generated share password expires (1-10). Only relevant when shared is true.
Range: 1 - 10
metadataobjectCustom metadata as key-value pairs to attach to the file.
tagsarrayTags for categorization.
Array of: string
list6 paramsList active uploaded files for the current budget with optional filtering and pagination. Returns newest files first and includes cached preview URLs when available.
list6 paramsList active uploaded files for the current budget with optional filtering and pagination. Returns newest files first and includes cached preview URLs when available.
tagsarrayFilter to files matching any of these tags.
Array of: string
date_fromstringOnly files created on or after this date (ISO 8601).
date_tostringOnly files created on or before this date (ISO 8601).
limitintegerMaximum number of files to return (1-100).
Range: 1 - 100
offsetintegerNumber of files to skip for pagination.
Range: 0 - ...
url_expiration_minutesintegerRequested preview URL validity in minutes when a preview URL must be refreshed (1-10080, default: 10080).
Range: 1 - 10080
get2 params(1 required)Get file metadata and a fresh signed download URL for a specific file.
get2 params(1 required)Get file metadata and a fresh signed download URL for a specific file.
file_idrequiredstringFile UUID returned from upload.
url_expiration_minutesintegerHow long the signed URL should remain valid in minutes (1-10080, default: 10080).
Range: 1 - 10080
download3 params(1 required)Download file content as base64 for files up to 5MB, or return a signed URL for larger files.
download3 params(1 required)Download file content as base64 for files up to 5MB, or return a signed URL for larger files.
file_idrequiredstringFile UUID returned from upload.
return_contentbooleanIf true, returns base64 file content for files up to 5MB. Otherwise returns a signed URL.
url_expiration_minutesintegerHow long the signed URL should remain valid in minutes when returning a URL (1-10080, default: 10080).
Range: 1 - 10080
delete1 param(1 required)Permanently delete a file from storage.
delete1 param(1 required)Permanently delete a file from storage.
file_idrequiredstringFile UUID returned from upload.
share5cr3 params(1 required)Create or refresh a password-protected public share link for an existing file.
share5cr3 params(1 required)Create or refresh a password-protected public share link for an existing file.
file_idrequiredstringFile UUID returned from upload.
password_max_usesintegerMaximum number of times the auto-generated password can be used (1-10). Leave empty for unlimited uses.
Range: 1 - 10
password_max_minutesintegerMinutes until the auto-generated password expires (1-10). Leave empty for no expiration.
Range: 1 - 10
access_history2 params(1 required)View password-protected share access history for a file.
access_history2 params(1 required)View password-protected share access history for a file.
file_idrequiredstringFile UUID returned from upload.
limitintegerMaximum number of access records to return (1-100).
Range: 1 - 100
update_metadata5cr5 params(1 required)Update metadata and tags on a file.
update_metadata5cr5 params(1 required)Update metadata and tags on a file.
file_idrequiredstringFile UUID returned from upload.
metadataobjectMetadata key-value pairs to merge into existing metadata.
tagsarrayReplace all existing tags with this list.
Array of: string
add_tagsarrayAdd these tags while preserving current tags.
Array of: string
remove_tagsarrayRemove these tags from the current tag set.
Array of: string
extend_expiration10cr1 param(1 required)Extend a file's expiration date by 7 days from the current expiration.
extend_expiration10cr1 param(1 required)Extend a file's expiration date by 7 days from the current expiration.
file_idrequiredstringFile UUID returned from upload.
Frequently Asked Questions
How do I connect this tool to an external agent?
You can install the local MCP server by opening a terminal and running:
Install commands
npm install -g @agentpmt/mcp-router
agentpmt-setupThis will connect you to local agents like Claude Code, Windsurf, Grok Build, Cursor, etc.
Alternatively you can connect to the hosted version with this config block, no installation required:
Hosted MCP config
{
"mcpServers": {
"agentpmt": {
"type": "streamable-http",
"url": "https://api.agentpmt.com/mcp",
"headers": {
"Authorization": "Bearer <AGENTPMT_BEARER_TOKEN>",
"x-instance-metadata": "{\"client\":\"generic-mcp\",\"platform\":\"remote\"}"
}
}
}
}View MCP Connection Instructions for more details.
How does an external agent use this tool?
After the external agent is connected to an Agent Group that can use this tool, paste this prompt into the agent:
Agent prompt
Call the AgentPMT-Tool-Search-and-Execution tool with action 'get_schema' and tool_id 6948b078b54506f955d789ed ("File Management"). Then call the same tool with action 'call_tool', tool_id 6948b078b54506f955d789ed, and the parameters needed for my request.
The agent should fetch the tool schema first, collect the required parameters for your request, and then call the tool through AgentPMT.

















