skylight_upload_photo
Upload a local photo or video to your Skylight frame so it appears in the slideshow. Confirms before uploading to ensure only approved files are sent.
Instructions
Upload a photo or video from a local file to the Skylight frame (it appears in the slideshow). Two-step: signs an S3 upload with temporary credentials, then registers it as a frame message. Asks the user to confirm first: a confirmation prompt where the client supports one; otherwise the first call returns a preview and a confirmToken, and only a repeat call with that token proceeds (see MCP_CONFIRM_MODE). The preview echoes the resolved absolute image_path, detected mime, size and caption, and nothing is read or uploaded until it is confirmed.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| caption | No | Caption shown with the photo. | |
| frameId | No | ||
| frame_ids | No | Frame ids to post to; defaults to the resolved frame. | |
| image_path | Yes | Absolute path to a local image/video file (jpg, jpeg, png, heic, gif, webp, mp4, mov; max 200 MiB). Anything else — or a symlink, or a file whose contents do not match its extension — is refused. | |
| confirmToken | No | ONLY for the two-step confirmation fallback (a client without MCP elicitation). The confirmToken from this same tool's phase-1 "confirmation-required" response, passed back ONLY after the user has seen that preview and explicitly approved it in chat — never on the first call, never invented, never reused. Call again with the same arguments. Ignored when the client supports elicitation. |