Skip to main content
Glama
Cloady

Cloady

Official
by Cloady

Create Upload

createUpload
Destructive

Uploads project files or a single .zip to Cloady and returns an uploadId to use as the source for deployApp or inspectSource. Accepts up to 3000 files and 50 MB.

Instructions

Send each file's path and content, or its path and the upload to take it from (fromUpload, as for a picture from generateImage). The response's uploadId goes into deployApp or inspectSource as source { type: "upload", uploadId }. A single .zip file is taken as the whole project. Up to 3000 files and 50 MB; an upload that no app uses within three hours is deleted.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "workspaceSlug": "<workspaceSlug>"
    },
    "name": "createUpload"
  }
}

Input Schema

NameRequiredDescriptionDefault
requestBodyNoThe JSON request body.
workspaceSlugYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.18.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare destructive and open-world behavior; the description adds the specific mechanics behind that: a 3000-file / 50 MB ceiling, that a single .zip is interpreted as an entire project, and that unused uploads are garbage-collected after three hours. It does not cover permission requirements or how overwrites/duplicate paths behave, which keeps it below the top mark for a write operation.

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?

Four dense sentences with no filler, each carrying a distinct fact (payload shape, downstream use, zip behavior, limits/TTL). Minor weakness: it opens with how to structure files rather than a lead statement of what the tool creates, so the core action is slightly back-loaded.

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?

For a two-parameter tool with a nested body and no output schema, the description covers what is returned (uploadId), what to do with it, the size/count limits, and the lifecycle. Remaining gaps are workspaceSlug semantics and error/failure behavior, which are minor relative to what is documented.

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 description coverage is only 50% (workspaceSlug is undocumented), but the description compensates by explaining the two mutually exclusive file shapes (path+content vs. path+fromUpload) and the undocumented .zip-whole-project special case. It does not clarify workspaceSlug, leaving one required parameter to inference.

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 states a concrete action (upload files, either inline content or by reference from another upload) and distinguishes it from related siblings by naming generateImage as a source producer and deployApp/inspectSource as consumers. An agent can tell what this tool produces (an uploadId) without opening the schema.

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 explains the downstream workflow clearly — the returned uploadId is passed to deployApp or inspectSource as source { type: "upload", uploadId } — and shows the fromUpload path using generateImage output as the example. It does not explicitly state when to avoid this tool (e.g., versus inline deploy source or importProviderService), so the routing guidance is contextual rather than exhaustive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools