media.request_upload
Validate an upload (mime/size by kind) and return the deterministic, tenant-namespaced provider_key. No bytes: the connector mints the signed URL from the key.
- Scope:
media.write - System: no
- Reachable from:
POST /v1/commands/media.request_upload(tenant credential) · MCP toolmedia.request_upload· SDKclient.call('media.request_upload', …) - Events: none — It writes NOTHING: it validates mime/size and NAMES the deterministic provider_key that the connector then signs. A command that changes no state has nothing to announce.
Input (JSON Schema)
Section titled “Input (JSON Schema)”{ "properties": { "filename": { "minLength": 1, "type": "string" }, "kind": { "enum": [ "image", "document", "video_external" ], "type": "string" }, "mime": { "minLength": 1, "type": "string" }, "size": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" } }, "required": [ "filename", "mime" ], "type": "object"}Result (200)
Section titled “Result (200)”{ "additionalProperties": false, "properties": { "kind": { "enum": [ "image", "document" ], "type": "string" }, "max_bytes": { "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" }, "provider_key": { "type": "string" } }, "required": [ "provider_key", "kind", "max_bytes" ], "type": "object"}Errors
Section titled “Errors”validation_failed (400) · unauthorized (401) · forbidden (403) · conflict (409) · internal (500)