Get a link to send files from this machine
get_upload_linkFor files on the agent's own machine (a logo, fonts, pictures, a brand guide in the project folder): returns a one-time https address, good for 30 minutes, and the exact shell line to send files to it: curl -F file=@/path/to/logo.png . Run it from your own shell, once per file or with several -F file=@... in one command. Each file lands where add_logo, add_font, add_pictures or add_guide would put it (on the open setup; with no setup open, on the project's brand files: give project; a guide needs an open setup), is checked the same way, and curl's answer lists what arrived. kind: logo, font, picture, guide, or file (each file's own bytes decide: an image is a picture, a font file is a font, a PDF, Word or text file is a guide). What you give here (variant, family, role, caption, title, character, look, place...) applies to each file; -F caption=... beside a file overrides it for that command. Pictures of one of the business's own characters take character and look (-F character=Marsell -F look=3D), pictures of its own place take place, and each joins it (name them first with add_characters or add_places). Same size and type limits as the app's own uploads. Nothing big passes through your messages. kind voice clones the owner's own voice from recordings (the same as voice_clone, whose description says what consent means and how to record): give project, name and consent: true; every file in one curl command makes one voice, up to 25 recordings and 50 MB in all, of which Marsell hears at most 10 minutes. kind endcard sends the brand's end card video, the short card every one of its films ends on (an MP4, tall 9:16 and/or wide 16:9, one file per shape): give project; it replaces the end card Marsell made, and every later film ends on it. With series (a video series' id), it is that series' own end card instead: every later episode of the series ends on it, and other films keep the brand's.
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": {
"kind": "<kind>"
},
"name": "get_upload_link"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| use | No | For pictures. post: a post the business already published, kept for its look. | |
| kind | Yes | What the files are: logo, font, picture, guide, file (each file's own bytes decide), voice (recordings of the owner's own voice to clone) or endcard (the end card video). | |
| look | No | For pictures, with character: which of its looks they show. | |
| name | No | For voice: the voice's name, what the owner picks it by in Create. | |
| role | No | For fonts. | |
| label | No | For logos: what this version is for. | |
| place | No | For pictures: the business's own place they show, by its name in add_places. | |
| shape | No | For endcard: the video's shape, only when it cannot be read from the video (tall is 9:16, wide is 16:9). | |
| title | No | For guides: its title (else the file's name). | |
| family | No | For fonts: the family's name (else read from the file name). | |
| series | No | For endcard: a video series' id (series_read), to send that series' own end card instead of the brand's. | |
| caption | No | For pictures: what it shows. | |
| consent | No | For voice, required: true only when the owner said, in their own words, that it is their own voice or that they have the speaker's permission. | |
| product | No | For pictures: the product it shows, by its name in add_products. | |
| project | No | Only with no setup open: the project (list_projects' id) whose brand files the files join. For voice, always: the project the voice is for (its id or exact name). | |
| variant | No | For logos: Primary unless it is a light, dark or symbol version. | |
| character | No | For pictures: the business's own character they show, by its name in add_characters. | |
| description | No | For voice: what it sounds like, in a few words. | |
| remove_noise | No | For voice: true to take background noise out of the recordings first. |