Plan a large upload
plan_uploadAccepts a file manifest and returns which hashes are already stored, a direct upload URL for each missing hash, and a session id. Inputs: files as {path, sha256, size, content_type?}, and optional slug, spa, merge, ttl_seconds, expected_version, via, and token. Applies when the files are larger than about 4 MB, or when each sha256 is already known. Does not publish by itself. Per-site size limits are unchanged.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| spa | No | ||
| via | No | Optional label stored with the publish. At most 80 characters. An IP address, a URL, or an email address is not stored. A non-empty value replaces the X-Via header. | |
| slug | No | Exact slug, or omit for a random one. | |
| files | Yes | Manifest entries. sha256 is 64 lowercase hex characters. size is the byte length. | |
| merge | No | Overlay these paths on the live site. | |
| token | No | Bearer token returned by your first publish (deed_tok_...). Optional if the MCP client sends Authorization: Bearer. | |
| ttl_seconds | No | ||
| expected_version | No | Live version this upload must match, such as "v3". |