Postroom Docs
AI assistants / Workspace media gateway

Workspace media gateway

Use publishing media from compatible MCP clients or an authenticated browser.

Client-neutral transfer

yet_create_media_upload accepts mime_type image/jpeg, image/png, image/webp or video/mp4. It creates a ten-minute request with an upload_id, browser_upload_url and credentialed upload_url. Images are limited to 3 MB; MP4 to 20 MB. This is media transfer, not AI image generation.

Binary clients

PUT the actual file bytes to the exact returned upload_url with its content_type. Do not add the Postroom OAuth token to that request or display temporary upload credentials. Call yet_complete_media_upload with upload_id, then use the returned workspace-owned media_url.

Browser fallback for Claude and other clients

Open browser_upload_url, sign in to the same Postroom workspace, choose the requested file and select Upload and verify. No password is given to the assistant. After completion, the assistant calls yet_get_media_upload with upload_id to obtain media_url. The user still selects the file in their browser; Claude web does not automatically transfer its attachments.

Safety and publishing

Upload URLs expire after ten minutes and accept only the selected MIME type and size limit. Files are validated before storage completion; arbitrary remote URLs are not accepted. Publishing media is publicly accessible, including temporary uploaded media. Completed content-addressed references belong to the authenticated workspace and remain subject to the existing deletion policy. Previews and workflows validate destination-specific requirements. Uploading grants no publishing approval.

Existing ChatGPT clients

yet_import_file and its ChatGPT attachment metadata are retained. Existing image-upload tools remain compatible. Clients may use the new gateway instead. The gateway is the client-neutral alternative, not a claim that Claude attachments are supported by the ChatGPT importer.

Input schemas

yet_create_media_upload: {mime_type: enum(image/jpeg,image/png,image/webp,video/mp4)}, required mime_type. yet_complete_media_upload: {upload_id: string}, required upload_id. yet_get_media_upload: {upload_id: string}, required upload_id. Additional properties are rejected. Creating and completing require social.read + social.write; status retrieval requires social.read.

Catalog compatibility

The shared endpoint retains legacy ChatGPT tools and adds three gateway tools. It does not hide tools based on a spoofable User-Agent. Claude users should use the gateway rather than yet_import_file; the explicit Claude endpoint https://social.notacompanynameyet.com/mcp/claude omits the ChatGPT importer and app-only scheduling control. Tool discovery is not proof that every client can transfer file bytes.