copy_messages
ChatGPTCopy messages to a folder without changing the originals. Copies get new IDs. If the server does not return them, search the destination.
create_folder
ChatGPTCreate a custom folder, optionally inside an existing folder. Give one name. To create a subfolder, choose a parent from list_folders.
forward_message
ChatGPTForward a stored message, including its original body, inline files, and attachments. The original Bcc is not disclosed. Do not retry an unconfirmed send automatically.
get_contact
ChatGPTRead one contact using its exact contact_id from search_contacts on this iCloud connection. Search first if you only know a name or address. A moved or deleted contact can have a stale ID.
get_message
ChatGPTRead a message as HTML source without marking it as read. External resources are not fetched. Attachment metadata is always included; request IDs to get the files.
get_messages
ChatGPTRead up to ten messages in one folder without marking them read. Each HTML body is limited to 20,000 characters. Use get_message for more of a truncated body or to download attachments.
get_profile
ChatGPTIdentify the Apple login used by this connection without contacting Apple. The login can be an email or username. It does not establish a deliverable mailbox or canonical identity; confirm the recipient before sending mail.
list_folders
ChatGPTList folders and identify standard folders such as Sent and Trash. A parent returns only its direct children. If the list is truncated, narrow it by parent.
mark_messages_flagged
ChatGPTFlag or unflag messages in one folder without changing read state or other flags. This marks individual messages; it does not change Apple's sender-based VIP list.
mark_messages_read
ChatGPTMark messages in one folder as read or unread.
move_messages
ChatGPTMove messages to a folder, including Trash, Archive, or Junk. Moved messages get new IDs. If the server does not return them, search the destination. A failed move may have copied or moved messages. Check both folders before retrying.
permanently_delete_messages
ChatGPTPermanently delete selected messages in Trash. This cannot be undone. For ordinary deletion, move messages to Trash instead.
save_draft
ChatGPTSave a new draft or replace an existing draft without sending it. A replacement must include all desired fields and files. The result says whether the old draft was removed.
search_contacts
ChatGPTFind contacts using a case-insensitive literal substring on this iCloud connection. The whole query must appear together in a name, email, phone, or organization. For example, Alex Smith is one phrase; it does not search for Alex and Smith separately. Returns up to 25 matches per page. Use get_contact for more detail and ask if a match is still ambiguous. If incomplete, narrow the query; only use a next_cursor from this search and connection.
search_messages
ChatGPTSearch one folder using IMAP terms, newest messages first. The limit applies to each page. Pass next_cursor as cursor with the same folder and criteria to continue, even after an empty page. Stop when next_cursor is absent.
send_draft
ChatGPTSend a saved draft to its existing recipients, with its existing files. Submitted means iCloud accepted the message, not that it was delivered. Do not retry an unconfirmed send automatically.
send_message
ChatGPTSend new mail or reply from the connected iCloud account. Choose reply recipients explicitly. Submitted means iCloud accepted the message, not that it was delivered. Do not retry an unconfirmed send automatically.