Aller au contenu
Tous les outils

create_draft

E-mail · macOS

Effet: écriture. État: disponibilité conditionnelle.

«Disponibilité conditionnelle» signifie que l’outil peut dépendre de la version, de la plateforme, des autorisations, du compte ou de la configuration. Il n’est pas forcément actif partout.

macOS

Objectif

Enregistre un e-mail dans le dossier Brouillons de Mail.app pour que l'utilisateur le relise et l'envoie manuellement ; il n'envoie jamais. Rédigez un nouveau brouillon avec `to`/`subject` et `body` ou `html_body`, ou enregistrez un brouillon de réponse avec `reply_to_message_id`, `reply_all` et `body` ou `html_body` ; la réponse donne l'objet et, une fois que Mail fait réapparaître le brouillon enregistré, la boîte aux lettres dans laquelle il est arrivé (`mailbox` pour un nouveau brouillon, `draft_mailbox` pour une réponse) ainsi que son id de message actuel ; tant que Mail ne l'a pas encore fait apparaître, aucune boîte aux lettres n'est indiquée. Un brouillon de réponse contient votre texte suivi d'une citation en texte brut de l'original ("On <date>, <sender> wrote:" et les lignes de l'original préfixées par `> `), et non la citation stylisée de Mail ; dans un brouillon de réponse, `html_body` est converti en texte brut. `quoted_original` dans la réponse vaut true lorsque la citation est présente ; il vaut false, avec une note, lorsque l'original n'a aucun texte lisible. La réponse d'un brouillon de réponse inclut `threaded`: true signifie que le brouillon enregistré a été relu et que ses en-têtes référencent le message d'origine (il apparaîtra dans la conversation) ; false signifie qu'il a été enregistré SANS les en-têtes de fil (transmettez l'avertissement à l'utilisateur) ; "unconfirmed" signifie qu'il n'a pas pu être relu à temps (par exemple, retard de synchronisation Exchange). Sur un Mac avec plusieurs comptes, passez `account` (un nom de compte issu de list_email_accounts) ou `from` (une adresse d'expéditeur) pour placer le brouillon dans les Brouillons de ce compte ; sinon, il arrive dans le compte par défaut. Joignez des fichiers en passant `attachments` (chemins de fichiers absolus séparés par des virgules, par exemple un devis PDF) ; ils sont joints au brouillon enregistré. Utilisez-le pour l'utilisateur prudent qui veut des e-mails rédigés par l'IA mais tient à les envoyer lui-même. Nécessite confirm=true pour l'enregistrer réellement ; sans cela, il renvoie un aperçu sans toucher à Mail.app.

Entrées requises

Le schéma de cette plateforme ne déclare aucune entrée requise. Des sélecteurs facultatifs ou des conditions d’exécution peuvent néanmoins exister.

Autorisations et confirmation

Le schéma déclare un paramètre de confirmation explicite. Vérifiez l’aperçu et autorisez l’opération réelle conformément au contrat de la plateforme.

Schéma technique canonique en anglais — macOS
{
  "properties": {
    "account": {
      "description": "Account name (from list_email_accounts) whose Drafts folder receives the draft. Alternative to `from`.",
      "type": "string"
    },
    "attachments": {
      "description": "Files to attach, as comma-separated absolute paths (e.g. a PDF).",
      "type": "string"
    },
    "bcc": {
      "description": "BCC address(es), comma-separated.",
      "type": "string"
    },
    "body": {
      "description": "Plain-text body of the draft.",
      "type": "string"
    },
    "cc": {
      "description": "CC address(es), comma-separated.",
      "type": "string"
    },
    "confirm": {
      "default": "false",
      "description": "Must be true to actually save the draft. Without it, returns a preview of the recipient/sender, subject, and that the body will be saved.",
      "type": "boolean"
    },
    "from": {
      "description": "Sender address — on a multi-account Mac, selects which account's Drafts to use. Alternative to `account`.",
      "type": "string"
    },
    "html_body": {
      "description": "HTML body of the draft. Takes precedence over `body` when both are given.",
      "type": "string"
    },
    "reply_all": {
      "default": "false",
      "description": "For a reply draft, include all original recipients (reply-all) instead of just the sender.",
      "type": "boolean"
    },
    "reply_to_message_id": {
      "description": "Message id (from list_emails/search_emails) to draft a reply to, instead of a new message.",
      "type": "string"
    },
    "subject": {
      "description": "Subject line for a new draft. Ignored for reply drafts (they inherit the original subject).",
      "type": "string"
    },
    "to": {
      "description": "Recipient address(es) for a new draft, comma-separated. May be left empty: the draft is saved without a recipient, to be added in Mail. Omit for a reply draft (uses reply_to_message_id).",
      "type": "string"
    }
  },
  "type": "object"
}

Exemple documentaire

Exemple de documentation pour create_draft. N’exécutez pas cet exemple. Les arguments présentés appartiennent à un jeu de données fictif ; résolvez les identifiants réels et obtenez une autorisation avant tout appel réel.

{
  "body": "Can we review the launch checklist on Tuesday?",
  "confirm": false,
  "subject": "Planning meeting",
  "to": "alex@example.com"
}