MCP Tools Reference: gmailmcp.googleapis.com

Strumento: create_draft

Crea una nuova email in versione bozza nell'account Gmail dell'utente autenticato.

Questo strumento prende come input gli indirizzi dei destinatari, un oggetto e il contenuto del corpo. Se la bozza viene creata come risposta a un messaggio esistente, l'ID del messaggio originale deve essere trasmesso allo strumento nel campo replyToMessageId.

Restituisce solo l'ID univoco (id) del messaggio in bozza.

Limitazione: la creazione di bozze con allegati non è ancora supportata.

Il seguente esempio mostra come utilizzare curl per richiamare lo strumento MCP create_draft.

Richiesta curl
curl --location 'https://gmailmcp.googleapis.com/mcp/v1' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "create_draft",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Schema di input

Messaggio di richiesta per la RPC CreateDraft.

CreateDraftRequest

Rappresentazione JSON
{
  "to": [
    string
  ],
  "cc": [
    string
  ],
  "bcc": [
    string
  ],
  "subject": string,
  "body": string,
  "htmlBody": string,
  "replyToMessageId": string,
  "attachments": [
    {
      object (Attachment)
    }
  ]
}
Campi
to[]

string

Facoltativo. I destinatari principali della bozza di email. Ogni stringa DEVE essere un indirizzo email semplice valido (ad es. "utente@example.com"). Il formato "Nome email@example.com" NON è supportato da questo strumento.

cc[]

string

Facoltativo. I destinatari in copia carbone della bozza di email. Ogni stringa DEVE essere un indirizzo email semplice valido (ad es. "utente@example.com"). Il formato "Nome email@example.com" NON è supportato da questo strumento.

bcc[]

string

Facoltativo. I destinatari della copia carbone nascosta della bozza di email. Ogni stringa DEVE essere un indirizzo email semplice valido (ad es. "utente@example.com"). Il formato "Nome email@example.com" NON è supportato da questo strumento.

subject

string

Facoltativo. La riga dell'oggetto dell'email. Se non viene fornito, il valore predefinito è vuoto.

body

string

Facoltativo. Il corpo principale della bozza di email. Se viene fornito anche html_body, questo campo viene trattato come alternativa in testo normale.

htmlBody

string

Il contenuto HTML della bozza di email. Se fornito, verrà utilizzato come versione RTF dell'email.

replyToMessageId

string

Facoltativo. L'ID del messaggio a cui rispondere. Se fornito, questo verrà utilizzato come ID messaggio di risposta per la bozza di email e body e html_body verranno aggiunti al corpo del messaggio originale.

attachments[]

object (Attachment)

Facoltativo. Gli allegati da includere nell'email. Le dimensioni combinate degli allegati nel messaggio non possono superare i 25 MB. Se devi inviare file di dimensioni superiori a 25 MB, caricali prima su Drive e poi inserisci il link di Drive nel corpo o in html_body.

Allegato

Rappresentazione JSON
{
  "id": string,
  "filename": string,
  "mimeType": string,
  "content": string,
  "inline": boolean
}
Campi
id

string

Facoltativo. Solo output. Se presente, contiene l'ID di un allegato esterno che può essere recuperato in una richiesta GetMessageAttachment separata.

filename

string

Facoltativo. Il nome del file da allegare, ad esempio "invoice.pdf". Per gli allegati incorporati, questo valore viene utilizzato per la generazione di Content-ID. Per gli allegati normali, il nome file viene utilizzato per specificare il nome file ai client di posta. Se non viene fornito, l'allegato potrebbe essere ricevuto senza nome.

mimeType

string

Facoltativo. Il campo che rappresenta un tipo di contenuto o multimediale deve utilizzare il tipo MIME IANA, https://www.iana.org/assignments/media-types/media-types.xhtml. Se non viene fornito, il valore predefinito è "application/octet-stream".

content

string (bytes format)

Obbligatorio. I contenuti dell'allegato codificati in base64.

Una stringa con codifica in base64.

inline

boolean

Facoltativo. Se il valore è true, questo allegato viene gestito come inline. Un allegato incorporato è un contenuto destinato a essere visualizzato all'interno del corpo di un'email HTML, anziché essere elencato come file separato da scaricare. Se è false o assente, il valore predefinito è false e viene trattato come un normale allegato.

Schema di output

Dettagli di una bozza.

Bozza

Rappresentazione JSON
{
  "id": string,
  "subject": string,
  "threadId": string,
  "toRecipients": [
    string
  ],
  "ccRecipients": [
    string
  ],
  "bccRecipients": [
    string
  ],
  "plaintextBody": string,
  "date": string,
  "htmlBody": string
}
Campi
id

string

L'identificatore univoco della risorsa bozza.

subject

string

La riga dell'oggetto della bozza del messaggio.

threadId

string

L'ID del thread a cui appartiene questa bozza.

toRecipients[]

string

Elenco degli indirizzi email dei destinatari "A" estratti dalle intestazioni.

ccRecipients[]

string

Elenco degli indirizzi email dei destinatari in "Cc" estratti dalle intestazioni.

bccRecipients[]

string

Elenco degli indirizzi email dei destinatari in "Ccn" estratti dalle intestazioni.

plaintextBody

string

Contenuto del corpo del messaggio in testo normale, se disponibile.

date

string

Data della bozza nel formato ISO 8601 (AAAA-MM-GG).

htmlBody

string

Il contenuto del corpo HTML della bozza, se disponibile.

Annotazioni dello strumento

Suggerimento distruttivo: ❌ | Suggerimento idempotente: ❌ | Suggerimento di sola lettura: ❌ | Suggerimento open world: ❌

Ambiti di autorizzazione

Richiede uno dei seguenti ambiti OAuth:

  • https://mail.google.com/
  • https://www.googleapis.com/auth/gmail.modify
  • https://www.googleapis.com/auth/gmail.compose