upload_site
Publish a multi-file static site from an authenticated account. Pass files as an array of {path, content} strings; the root must contain index.html or index.htm. Returns a /s// URL that serves HTML/CSS/JS/assets. Limits: 200 files, 20 MB total, 5 MB per file. Requires OAuth or an API key; site links never show the anonymous badge. Use idempotencyKey to make retries safe.
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": {
"files": "<files>"
},
"name": "upload_site"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | Optional comma-separated tags. | |
| files | Yes | Site files. Paths are relative and must not contain .. or absolute paths. | |
| title | No | Optional site title; defaults to "site". | |
| expiresIn | No | Retention: 1h, 24h, 7d, 30d, 90d, or 0 for permanent. Default 7d. | 7d |
| description | No | Optional description. | |
| idempotencyKey | No | Optional 1-128 char retry key. Reusing it with the same payload returns the original site; the edit token is only returned to the original caller. |