Tool: create_draft
Erstellt einen neuen E‑Mail-Vorschlag im Gmail-Konto des authentifizierten Nutzers.
Für dieses Tool werden Empfängeradressen, ein Betreff und der Nachrichtentext als Eingaben verwendet. Wenn der Entwurf als Antwort auf eine vorhandene Nachricht erstellt wird, sollte die ID der ursprünglichen Nachricht im Feld „replyToMessageId“ an das Tool übergeben werden.
Gibt nur die eindeutige ID (id) der Nachrichtenentwurf zurück.
Einschränkung: Das Erstellen von Entwürfen mit Anhängen wird noch nicht unterstützt.
Im folgenden Beispiel wird gezeigt, wie Sie mit curl das MCP-Tool create_draft aufrufen.
| Curl-Anfrage |
|---|
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 }' |
Eingabeschema
Anfragenachricht für den RPC „CreateDraft“.
CreateDraftRequest
| JSON-Darstellung |
|---|
{
"to": [
string
],
"cc": [
string
],
"bcc": [
string
],
"subject": string,
"body": string,
"htmlBody": string,
"replyToMessageId": string,
"attachments": [
{
object ( |
| Felder | |
|---|---|
to[] |
Optional. Die primären Empfänger des E‑Mail-Entwurfs. Jeder String MUSS eine gültige E‑Mail-Adresse im Klartext sein (z.B. „nutzer@beispiel.de“). Das Format „Name email@example.com“ wird von diesem Tool NICHT unterstützt. |
cc[] |
Optional. Die Empfänger einer Kopie des E‑Mail-Entwurfs. Jeder String MUSS eine gültige E‑Mail-Adresse im Klartext sein (z.B. „nutzer@beispiel.de“). Das Format „Name email@example.com“ wird von diesem Tool NICHT unterstützt. |
bcc[] |
Optional. Die Empfänger der Blindkopie des E‑Mail-Entwurfs. Jeder String MUSS eine gültige E‑Mail-Adresse im Klartext sein (z.B. „nutzer@beispiel.de“). Das Format „Name email@example.com“ wird von diesem Tool NICHT unterstützt. |
subject |
Optional. Der Betreff der E‑Mail. Wenn kein Wert angegeben ist, wird der Standardwert „leer“ verwendet. |
body |
Optional. Der Haupttext des E‑Mail-Entwurfs. Wenn auch „html_body“ angegeben wird, wird dieses Feld als Nur-Text-Alternative behandelt. |
htmlBody |
Der HTML-Inhalt des E-Mail-Entwurfs. Falls angegeben, wird diese als Rich-Text-Version der E‑Mail verwendet. |
replyToMessageId |
Optional. Die ID der Nachricht, auf die geantwortet werden soll. Falls angegeben, wird diese als „Antworten an“-Nachrichten-ID für den E‑Mail-Entwurf verwendet und die |
attachments[] |
Optional. Die Anhänge, die in die E‑Mail eingefügt werden sollen. Die Gesamtgröße der Anhänge in der Nachricht darf 25 MB nicht überschreiten. Wenn Sie Dateien senden müssen, die größer als 25 MB sind, laden Sie die Datei zuerst in Drive hoch und fügen Sie dann den Drive-Link in den Text oder html_body ein. |
Anhang
| JSON-Darstellung |
|---|
{ "id": string, "filename": string, "mimeType": string, "content": string, "inline": boolean } |
| Felder | |
|---|---|
id |
Optional. Nur Ausgabe. Enthält, sofern vorhanden, die ID einer externen Anlage, die in einer separaten |
filename |
Optional. Der Name der anzuhängenden Datei, z.B. „rechnung.pdf“. Bei Inline-Anhängen wird dies für die Content-ID-Generierung verwendet. Bei regulären Anhängen wird mit „filename“ der Dateiname für E-Mail-Clients angegeben. Wenn nicht angegeben, wird der Anhang möglicherweise ohne Namen empfangen. |
mimeType |
Optional. Für das Feld, das einen Inhalts- oder Medientyp darstellt, muss der IANA-MIME-Typ verwendet werden: https://www.iana.org/assignments/media-types/media-types.xhtml. Wenn kein Wert angegeben ist, wird standardmäßig „application/octet-stream“ verwendet. |
content |
Erforderlich. Der base64-codierte Inhalt des Anhangs. Ein base64-codierter String. |
inline |
Optional. Wenn „true“, wird dieser Anhang als Inline-Anhang behandelt. Ein Inline-Anhang ist ein Inhalt, der im Text einer HTML-E-Mail angezeigt werden soll und nicht als separate Datei zum Herunterladen aufgeführt wird. Wenn der Wert „false“ ist oder nicht vorhanden ist, wird standardmäßig „false“ verwendet und die Datei wird als regulärer Anhang behandelt. |
Ausgabeschema
Details zu einem Entwurf.
Entwurf
| JSON-Darstellung |
|---|
{ "id": string, "subject": string, "threadId": string, "toRecipients": [ string ], "ccRecipients": [ string ], "bccRecipients": [ string ], "plaintextBody": string, "date": string, "htmlBody": string } |
| Felder | |
|---|---|
id |
Die eindeutige Kennung der Ressourcenversion als Entwurf. |
subject |
Die Betreffzeile der Entwurfsnachricht. |
threadId |
Die ID des Threads, zu dem dieser Entwurf gehört. |
toRecipients[] |
Liste der E‑Mail-Adressen der Empfänger im Feld „An“, die aus Headern extrahiert wurden. |
ccRecipients[] |
Liste der E‑Mail-Adressen der „Cc“-Empfänger, die aus Headern extrahiert wurden. |
bccRecipients[] |
Liste der E‑Mail-Adressen der „Bcc“-Empfänger, die aus Headern extrahiert wurden. |
plaintextBody |
Nur-Text-Inhalt des Textkörpers, falls verfügbar. |
date |
Das Datum des Entwurfs im ISO 8601-Format (JJJJ-MM-TT). |
htmlBody |
Der HTML-Text des Entwurfs, falls verfügbar. |
Tool-Annotationen
Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ❌ | Open World Hint: ❌
Autorisierungsbereiche
Erfordert einen der folgenden OAuth-Bereiche:
https://mail.google.com/https://www.googleapis.com/auth/gmail.modifyhttps://www.googleapis.com/auth/gmail.compose