MCP Tools Reference: gmailmcp.googleapis.com

Herramienta: create_draft

Crea un nuevo borrador de correo electrónico en la cuenta de Gmail del usuario autenticado.

Esta herramienta toma como entradas las direcciones de los destinatarios, un asunto y el contenido del cuerpo. Si el borrador se crea como respuesta a un mensaje existente, el ID del mensaje original debe pasarse a la herramienta en el campo replyToMessageId.

Solo muestra el ID único (id) del mensaje borrador.

Limitación: Aún no se admite la creación de borradores con archivos adjuntos.

En el siguiente ejemplo, se muestra cómo usar curl para invocar la herramienta MCP create_draft.

Solicitud de 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
}'
                

Esquema de entrada

Mensaje de solicitud para CreateDraft RPC.

CreateDraftRequest

Representación JSON
{
  "to": [
    string
  ],
  "cc": [
    string
  ],
  "bcc": [
    string
  ],
  "subject": string,
  "body": string,
  "htmlBody": string,
  "replyToMessageId": string,
  "attachments": [
    {
      object (Attachment)
    }
  ]
}
Campos
to[]

string

Es opcional. Son los destinatarios principales del borrador de correo electrónico. Cada cadena DEBE ser una dirección de correo electrónico sin formato válida (p.ej., "usuario@example.com"). Esta herramienta NO admite el formato "Nombre email@example.com".

cc[]

string

Es opcional. Son los destinatarios de la copia al carbón del borrador de correo electrónico. Cada cadena DEBE ser una dirección de correo electrónico sin formato válida (p.ej., "usuario@example.com"). Esta herramienta NO admite el formato "Nombre email@example.com".

bcc[]

string

Es opcional. Son los destinatarios de la copia oculta al carbón del borrador de correo electrónico. Cada cadena DEBE ser una dirección de correo electrónico sin formato válida (p.ej., "usuario@example.com"). Esta herramienta NO admite el formato "Nombre email@example.com".

subject

string

Es opcional. Es la línea de asunto del correo electrónico. Si no se proporciona, el valor predeterminado es vacío.

body

string

Es opcional. Es el contenido principal del cuerpo del borrador de correo electrónico. Si también se proporciona html_body, este campo se trata como la alternativa de texto sin formato.

htmlBody

string

Es el contenido HTML del borrador de correo electrónico. Si se proporciona, se usará como la versión de texto enriquecido del correo electrónico.

replyToMessageId

string

Es opcional. Es el ID del mensaje al que se responderá. Si se proporciona, se usará como el ID del mensaje de respuesta para el borrador de correo electrónico, y se agregarán body y html_body al cuerpo del mensaje original.

attachments[]

object (Attachment)

Es opcional. Son los archivos adjuntos que se incluirán en el correo electrónico. El tamaño combinado de los archivos adjuntos en el mensaje no puede superar los 25 MB. Si necesitas enviar archivos de más de 25 MB, primero sube el archivo a Drive y, luego, inserta el vínculo de Drive en el cuerpo o html_body.

Archivo adjunto

Representación JSON
{
  "id": string,
  "filename": string,
  "mimeType": string,
  "content": string,
  "inline": boolean
}
Campos
id

string

Es opcional. Solo salida. Cuando está presente, contiene el ID de un archivo adjunto externo que se puede recuperar en una solicitud GetMessageAttachment independiente.

filename

string

Es opcional. Es el nombre del archivo que se adjuntará, p.ej., "invoice.pdf". Para los archivos adjuntos intercalados, se usa para la generación de Content-ID. Para los archivos adjuntos normales, el nombre de archivo se usa para especificar el nombre de archivo para los clientes de correo electrónico. Si no se proporciona, es posible que el archivo adjunto se reciba sin nombre.

mimeType

string

Es opcional. El campo que representa un tipo de contenido o multimedia debe usar el tipo de MIME de IANA, https://www.iana.org/assignments/media-types/media-types.xhtml. Si no se proporciona, el valor predeterminado es "application/octet-stream".

content

string (bytes format)

Obligatorio. Es el contenido codificado en base64 del archivo adjunto.

String codificada en base64.

inline

boolean

Es opcional. Si es verdadero, este archivo adjunto se controla como intercalado. Un archivo adjunto intercalado es un contenido que se mostrará en el cuerpo de un correo electrónico HTML, en lugar de aparecer como un archivo independiente para descargar. Si es falso o está ausente, el valor predeterminado es falso y se trata como un archivo adjunto normal.

Esquema de salida

Son los detalles de un borrador.

Borrador

Representación JSON
{
  "id": string,
  "subject": string,
  "threadId": string,
  "toRecipients": [
    string
  ],
  "ccRecipients": [
    string
  ],
  "bccRecipients": [
    string
  ],
  "plaintextBody": string,
  "date": string,
  "htmlBody": string
}
Campos
id

string

Es el identificador único del recurso de borrador.

subject

string

Es la línea de asunto del mensaje borrador.

threadId

string

Es el ID de la conversación a la que pertenece este borrador.

toRecipients[]

string

Es una lista de direcciones de correo electrónico de destinatarios "Para" extraídas de los encabezados.

ccRecipients[]

string

Es una lista de direcciones de correo electrónico de destinatarios "Cc" extraídas de los encabezados.

bccRecipients[]

string

Es una lista de direcciones de correo electrónico de destinatarios "Cco" extraídas de los encabezados.

plaintextBody

string

Es el contenido del cuerpo de texto sin formato, si está disponible.

date

string

Es la fecha del borrador en formato ISO 8601 (AAAA-MM-DD).

htmlBody

string

Es el contenido del cuerpo HTML del borrador, si está disponible.

Anotaciones de herramientas

Sugerencia destructiva: ❌ | Sugerencia idempotente: ❌ | Sugerencia de solo lectura: ❌ | Sugerencia de mundo abierto: ❌

Alcances de la autorización

Se necesita uno de los siguientes alcances de OAuth:

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