MCP Tools Reference: gmailmcp.googleapis.com

टूल: create_draft

इससे, पुष्टि किए गए उपयोगकर्ता के Gmail खाते में एक नया ड्राफ़्ट ईमेल बन जाता है.

यह टूल, पाने वालों के पते, विषय, और मुख्य कॉन्टेंट को इनपुट के तौर पर लेता है. अगर ड्राफ़्ट, किसी मौजूदा मैसेज के जवाब के तौर पर बनाया जाता है, तो ओरिजनल मैसेज का आईडी, replyToMessageId फ़ील्ड में टूल को पास किया जाना चाहिए.

यह ड्राफ़्ट मैसेज का सिर्फ़ यूनीक आईडी (id) दिखाता है.

सीमा: फ़िलहाल, अटैचमेंट के साथ ड्राफ़्ट बनाने की सुविधा उपलब्ध नहीं है.

यहां दिए गए सैंपल में, create_draft एमसीपी टूल को शुरू करने के लिए, 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
}'
                

इनपुट स्कीमा

CreateDraft RPC के लिए अनुरोध मैसेज.

CreateDraftRequest

JSON के काेड में दिखाना
{
  "to": [
    string
  ],
  "cc": [
    string
  ],
  "bcc": [
    string
  ],
  "subject": string,
  "body": string,
  "htmlBody": string,
  "replyToMessageId": string,
  "attachments": [
    {
      object (Attachment)
    }
  ]
}
फ़ील्ड
to[]

string

ज़रूरी नहीं. ईमेल ड्राफ़्ट के मुख्य पाने वाले. हर स्ट्रिंग, मान्य सामान्य ईमेल पता (जैसे, "user@example.com") होना चाहिए. यह टूल, "Name email@example.com" फ़ॉर्मैट के साथ काम नहीं करता.

cc[]

string

ज़रूरी नहीं. ईमेल ड्राफ़्ट की कार्बन कॉपी पाने वाले. हर स्ट्रिंग, मान्य सामान्य ईमेल पता (जैसे, "user@example.com") होना चाहिए. यह टूल, "Name email@example.com" फ़ॉर्मैट के साथ काम नहीं करता.

bcc[]

string

ज़रूरी नहीं. ईमेल ड्राफ़्ट की ब्लाइंड कार्बन कॉपी पाने वाले. हर स्ट्रिंग, मान्य सामान्य ईमेल पता (जैसे, "user@example.com") होना चाहिए. यह टूल, "Name email@example.com" फ़ॉर्मैट के साथ काम नहीं करता.

subject

string

ज़रूरी नहीं. ईमेल का विषय. अगर विषय नहीं दिया जाता है, तो डिफ़ॉल्ट रूप से यह खाली होता है.

body

string

ज़रूरी नहीं. ईमेल ड्राफ़्ट का मुख्य कॉन्टेंट. अगर html_body भी दिया जाता है, तो इस फ़ील्ड को सामान्य टेक्स्ट के विकल्प के तौर पर माना जाता है.

htmlBody

string

ईमेल ड्राफ़्ट का एचटीएमएल कॉन्टेंट. अगर यह दिया जाता है, तो इसका इस्तेमाल ईमेल के रिच-टेक्स्ट वर्शन के तौर पर किया जाएगा.

replyToMessageId

string

ज़रूरी नहीं. उस मैसेज का आईडी जिसका जवाब देना है. अगर यह दिया जाता है, तो इसका इस्तेमाल ईमेल ड्राफ़्ट के लिए, जवाब देने वाले मैसेज के आईडी के तौर पर किया जाएगा. साथ ही, body और html_body को ओरिजनल मैसेज के मैसेज का मुख्य हिस्सा में जोड़ा जाएगा.

attachments[]

object (Attachment)

ज़रूरी नहीं. ईमेल में शामिल किए जाने वाले अटैचमेंट. मैसेज में अटैचमेंट का कुल साइज़ 25 एमबी से ज़्यादा नहीं होना चाहिए. अगर आपको 25 एमबी से बड़ी फ़ाइलें भेजनी हैं, तो पहले फ़ाइल को Drive पर अपलोड करें. इसके बाद, Drive का लिंक, मुख्य कॉन्टेंट या html_body में डालें.

अटैचमेंट

JSON के काेड में दिखाना
{
  "id": string,
  "filename": string,
  "mimeType": string,
  "content": string,
  "inline": boolean
}
फ़ील्ड
id

string

ज़रूरी नहीं. सिर्फ़ आउटपुट. अगर यह मौजूद है, तो इसमें किसी बाहरी अटैचमेंट का आईडी होता है. इसे GetMessageAttachment के लिए अलग से किए गए अनुरोध में वापस पाया जा सकता है.

filename

string

ज़रूरी नहीं. अटैच की जाने वाली फ़ाइल का नाम. जैसे, "invoice.pdf". इनलाइन अटैचमेंट के लिए, इसका इस्तेमाल Content-ID जनरेट करने के लिए किया जाता है. सामान्य अटैचमेंट के लिए, फ़ाइल का नाम, ईमेल क्लाइंट को फ़ाइल का नाम बताने के लिए इस्तेमाल किया जाता है. अगर यह नहीं दिया जाता है, तो हो सकता है कि अटैचमेंट बिना नाम के मिले.

mimeType

string

ज़रूरी नहीं. कॉन्टेंट या मीडिया टाइप को दिखाने वाले फ़ील्ड में, IANA एमआईएमई टाइप का इस्तेमाल करना ज़रूरी है. इसके लिए, https://www.iana.org/assignments/media-types/media-types.xhtml पर जाएं. अगर यह नहीं दिया जाता है, तो डिफ़ॉल्ट रूप से "application/octet-stream" का इस्तेमाल किया जाता है.

content

string (bytes format)

ज़रूरी है. अटैचमेंट का base64 कोड में बदला गया कॉन्टेंट.

base64 कोड में बदली गई स्ट्रिंग.

inline

boolean

ज़रूरी नहीं. अगर यह सही है, तो इस अटैचमेंट को इनलाइन के तौर पर हैंडल किया जाता है. इनलाइन अटैचमेंट, ऐसा कॉन्टेंट होता है जिसे एचटीएमएल ईमेल के मुख्य कॉन्टेंट में दिखाया जाता है. इसे डाउनलोड करने के लिए, अलग फ़ाइल के तौर पर नहीं दिखाया जाता. अगर यह गलत है या मौजूद नहीं है, तो डिफ़ॉल्ट रूप से इसे गलत माना जाता है. साथ ही, इसे सामान्य अटैचमेंट के तौर पर माना जाता है.

आउटपुट स्कीमा

ड्राफ़्ट की जानकारी.

ड्राफ़्ट

JSON के काेड में दिखाना
{
  "id": string,
  "subject": string,
  "threadId": string,
  "toRecipients": [
    string
  ],
  "ccRecipients": [
    string
  ],
  "bccRecipients": [
    string
  ],
  "plaintextBody": string,
  "date": string,
  "htmlBody": string
}
फ़ील्ड
id

string

ड्राफ़्ट रिसॉर्स का यूनीक आइडेंटिफ़ायर.

subject

string

ड्राफ़्ट मैसेज का विषय.

threadId

string

उस थ्रेड का आईडी जिससे यह ड्राफ़्ट जुड़ा है.

toRecipients[]

string

हेडर से निकाले गए, 'टू' में शामिल पाने वालों के ईमेल पतों की सूची.

ccRecipients[]

string

हेडर से निकाले गए, 'सीसी' में शामिल पाने वालों के ईमेल पतों की सूची.

bccRecipients[]

string

हेडर से निकाले गए, 'बीसीसी' में शामिल पाने वालों के ईमेल पतों की सूची.

plaintextBody

string

अगर उपलब्ध हो, तो सामान्य टेक्स्ट में मुख्य कॉन्टेंट.

date

string

आईएसओ 8601 फ़ॉर्मैट (YYYY-MM-DD) में ड्राफ़्ट की तारीख.

htmlBody

string

अगर उपलब्ध हो, तो ड्राफ़्ट का एचटीएमएल में मुख्य कॉन्टेंट.

टूल के एनोटेशन

डिस्ट्रक्टिव हिंट: ❌ | आइडमपोटेंट हिंट: ❌ | रीड ओनली हिंट: ❌ | ओपन वर्ल्ड हिंट: ❌

अनुमति पाने के लिंक

इसके लिए, इनमें से किसी एक OAuth अनुमति की ज़रूरत होती है:

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