Download asset
Source-generated download_asset arguments, output schema, OAuth scope, and safety annotations for the reviewed MCP contract.
On this page
Tool
download_asset
Return metadata and a short-lived signed download URL for an owned output asset.
Permissions and safety
OAuth scope: assets:read
| Signal | Value |
|---|---|
destructiveHint |
false |
idempotentHint |
true |
openWorldHint |
false |
readOnlyHint |
true |
| spendsCredits | false |
| requiresUserConfirmation | false |
| sideEffects | signed_url_issued |
Annotations describe safety properties; they do not replace consent, OAuth authorization, or server checks.
Input arguments
| Field | Type | Required | Default | Constraints | Meaning |
|---|---|---|---|---|---|
asset_id |
string |
Yes | — | format: uuid |
Owned asset ID from task outputs, not a task ID. |
Argument example
{
"asset_id": "00000000-0000-4000-8000-000000000003"
}
Structured result
| Field | Type | Required | Default | Constraints | Meaning |
|---|---|---|---|---|---|
byte_size |
integer |
Yes | — | — | Expected file size in bytes. |
created_at |
string |
Yes | — | format: date-time |
Creation timestamp in UTC. |
download_expires_at |
string |
Yes | — | format: date-time |
Signed URL expiry in UTC; refresh via asset lookup when expired. |
download_url |
string |
Yes | — | — | Sensitive short-lived signed URL. Download without a Bearer header, including after redirects; never log the URL. |
format |
string |
Yes | — | — | Artifact format; inspect actual outputs rather than assuming an array order. |
id |
string |
Yes | — | format: uuid |
Stable public asset ID; use it to refresh download metadata. |
mime_type |
string |
Yes | — | — | Asset media type. |
object |
string |
No | "asset" |
const: "asset" |
— |
Errors and next steps
Tool errors contain an error object with code, message, retryable, request_id, and details. Do not parse message text or leak private inputs. Inspect partial outputs after a terminal failure; a signed URL is not a saved file.
Was this page helpful?
No search queries, code, or free text are collected. This switch controls documentation interactions only; general site analytics follow the privacy policy. Privacy policy