Upload a DAO avatar (one-shot: pins + returns avatarCID/avatarFileName/avatarUrl)
dexe_ipfs_upload_avatarUpload and pin a validated JPEG, PNG, WebP, or GIF avatar to IPFS, returning its CID, filename, and URL for use in DeXe DAO profiles.
Instructions
Writes to a remote service. Pins an image, returning {avatarCID, avatarFileName, avatarUrl}. PREFER filePath; never pass base64 through the conversation. Magic-byte validated (JPEG/PNG/WebP/GIF only — SVG/HTML render broken on app.dexe.io); renamed .jpeg; CID v1 base32.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "dexe_ipfs_upload_avatar"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| base64 | No | Base64 image bytes — only when the image isn't a local file. | |
| fileName | No | Base filename; extension will be normalized to .jpeg | avatar |
| filePath | No | Absolute path to a local image (JPEG/PNG/WebP/GIF, max 10 MB). Preferred over base64. | |
| contentType | No | Caller-claimed MIME type. Informational only — the pinned MIME comes from byte sniffing. | image/jpeg |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| size | Yes | ||
| pinnedAt | Yes | ||
| avatarCID | Yes | CID v1 base32 — pass to upload_dao_metadata as avatarCID. | |
| avatarUrl | Yes | Full subdomain-gateway URL — what the frontend stores verbatim. | |
| avatarFileName | Yes | Filename (always ends with .jpeg). | |
| detectedFormat | Yes | Raster format detected from magic bytes (jpeg|png|webp|gif). |