टूल: create_file
Google Drive में कोई फ़ाइल बनाने या अपलोड करने के लिए, इस टूल को कॉल करें.
अगर कॉन्टेंट अपलोड किया जा रहा है, तो टेक्स्ट वाले कॉन्टेंट के लिए "text_content" का इस्तेमाल करें. UTF8 फ़ॉर्मैट में नहीं लिखे गए कॉन्टेंट के लिए, "base64_content" फ़ील्ड का इस्तेमाल करें. साथ ही, उस फ़ील्ड पर डेटा सेट करने के लिए, डेटा को base64 फ़ॉर्मैट में एन्कोड करें.
फ़ाइल बनाने की प्रोसेस पूरी होने पर, यह एक फ़ाइल ऑब्जेक्ट दिखाता है.
यहां दिए गए Google Drive के फ़र्स्ट-पार्टी माइम टाइप, कॉन्टेंट दिए बिना बनाए जा सकते हैं:
application/vnd.google-apps.documentapplication/vnd.google-apps.spreadsheetapplication/vnd.google-apps.presentation
डिफ़ॉल्ट रूप से, इन MIME टाइप के लिए ये कन्वर्ज़न किए जाएंगे:
text/plainसेapplication/vnd.google-apps.documenttext/csvसेapplication/vnd.google-apps.spreadsheet
पहले पक्ष के माइम टाइप के लिए कन्वर्ज़न बंद करने के लिए, disable_conversion_to_google_type को true पर सेट करें.
माइम टाइप को application/vnd.google-apps.folder पर सेट करके फ़ोल्डर बनाए जा सकते हैं.
कॉन्टेंट अपलोड करते समय, content_mime_type फ़ील्ड भरना ज़रूरी है. साथ ही, यह अपलोड किए जा रहे कॉन्टेंट के टाइप से मेल खाना चाहिए.
यहां दिए गए सैंपल में, curl का इस्तेमाल करके create_file एमसीपी टूल को शुरू करने का तरीका बताया गया है.
| कर्ल अनुरोध |
|---|
curl --location 'https://drivemcp.googleapis.com/mcp/v1' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "create_file", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
इनपुट स्कीमा
फ़ाइल अपलोड करने का अनुरोध.
CreateFileRequest
| JSON के काेड में दिखाना |
|---|
{ "title": string, "mimeType": string, "contentMimeType": string, "content": string, "base64Content": string, "textContent": string, "parentId": string, "disableConversionToGoogleType": boolean } |
| फ़ील्ड | |
|---|---|
title |
फ़ाइल का टाइटल. |
mimeType |
DEPRECATED. इसका इस्तेमाल न करें!! इसके बजाय, content_mime_type सेट करें. |
contentMimeType |
अपलोड किए जा रहे कॉन्टेंट का माइम टाइप. किसी भी तरह का कॉन्टेंट उपलब्ध कराने पर यह जानकारी देना ज़रूरी है. |
content |
फ़ाइल का कॉन्टेंट, जिसे base64 कोड में बदला गया है. फ़ाइल का MIME टाइप कुछ भी हो, कॉन्टेंट फ़ील्ड हमेशा base64 कोड में होना चाहिए. DEPRECATED. इसके बजाय, base64_content या text_content का इस्तेमाल करें. |
base64Content |
ज़रूरी नहीं. अपलोड करने के लिए, base64 कोड में बदला गया कॉन्टेंट. इसे और text_content को सेट करना एक गड़बड़ी है. |
textContent |
ज़रूरी नहीं. अपलोड करने के लिए (UTF-8) टेक्स्ट कॉन्टेंट. इसे और base64_content को सेट करना एक गड़बड़ी है. |
parentId |
फ़ाइल का पैरंट आईडी. |
disableConversionToGoogleType |
इस विकल्प को सही पर सेट करने से, पास किए गए कॉन्टेंट के माइम टाइप को बनाए रखा जाता है और उसे Google के टाइप में नहीं बदला जाता. उदाहरण के लिए, इसके बिना टेक्स्ट/प्लेन कॉन्टेंट का माइम टाइप, application/vnd.google-apps.document में बदल जाएगा. जिन टाइप के लिए Google के पास कोई विकल्प नहीं है उन पर इसका कोई असर नहीं पड़ता. |
आउटपुट स्कीमा
यह एक फ़ाइल रिसॉर्स है.
फ़ाइल
| JSON के काेड में दिखाना |
|---|
{ "id": string, "title": string, "parentId": string, "mimeType": string "fileSize": string "description": string "fileExtension": string "contentSnippet": string "viewUrl": string "sharedWithMeTime": string "createdTime": string "modifiedTime": string "viewedByMeTime": string "owner": string "canAddChildren": boolean } |
| फ़ील्ड | |
|---|---|
id |
फ़ेच की गई फ़ाइल का आईडी. |
title |
फ़ाइल का टाइटल. |
parentId |
फ़ाइल के पैरंट का आईडी (ज़रूरी नहीं). |
यूनियन फ़ील्ड
|
|
mimeType |
फ़ाइल का MIME टाइप. |
यूनियन फ़ील्ड
|
|
fileSize |
फ़ाइल का साइज़, बाइट में. |
यूनियन फ़ील्ड
|
|
description |
फ़ाइल के बारे में जानकारी. |
यूनियन फ़ील्ड
|
|
fileExtension |
फ़ाइल का ओरिजनल फ़ाइल एक्सटेंशन. यह सिर्फ़ उन फ़ाइलों के लिए भरा जाता है जिनका कॉन्टेंट Drive में सेव किया गया है. |
यूनियन फ़ील्ड
|
|
contentSnippet |
फ़ाइल के कॉन्टेंट के बारे में जनरेट किया गया स्निपेट. |
यूनियन फ़ील्ड
|
|
viewUrl |
फ़ाइल देखने का यूआरएल. |
यूनियन फ़ील्ड
|
|
sharedWithMeTime |
फ़ाइल को अनुरोध करने वाले व्यक्ति के साथ शेयर किए जाने का समय. यह आरएफ़सी 3339 का इस्तेमाल करता है. इसमें जनरेट किया गया आउटपुट हमेशा Z-नॉर्मलाइज़ किया जाएगा और इसमें 0, 3, 6 या 9 फ़्रैक्शनल अंक इस्तेमाल किए जाएंगे. "Z" के अलावा, अन्य ऑफ़सेट भी स्वीकार किए जाते हैं. उदाहरण: |
यूनियन फ़ील्ड
|
|
createdTime |
वह समय जब फ़ाइल बनाई गई थी. यह आरएफ़सी 3339 का इस्तेमाल करता है. इसमें जनरेट किया गया आउटपुट हमेशा Z-नॉर्मलाइज़ किया जाएगा और इसमें 0, 3, 6 या 9 फ़्रैक्शनल अंक इस्तेमाल किए जाएंगे. "Z" के अलावा, अन्य ऑफ़सेट भी स्वीकार किए जाते हैं. उदाहरण: |
यूनियन फ़ील्ड
|
|
modifiedTime |
फ़ाइल में आखिरी बार बदलाव कब किया गया था. यह आरएफ़सी 3339 का इस्तेमाल करता है. इसमें जनरेट किया गया आउटपुट हमेशा Z-नॉर्मलाइज़ किया जाएगा और इसमें 0, 3, 6 या 9 फ़्रैक्शनल अंक इस्तेमाल किए जाएंगे. "Z" के अलावा, अन्य ऑफ़सेट भी स्वीकार किए जाते हैं. उदाहरण: |
यूनियन फ़ील्ड
|
|
viewedByMeTime |
अनुरोध करने वाले व्यक्ति ने फ़ाइल को पिछली बार कब देखा था. यह आरएफ़सी 3339 का इस्तेमाल करता है. इसमें जनरेट किया गया आउटपुट हमेशा Z-नॉर्मलाइज़ किया जाएगा और इसमें 0, 3, 6 या 9 फ़्रैक्शनल अंक इस्तेमाल किए जाएंगे. "Z" के अलावा, अन्य ऑफ़सेट भी स्वीकार किए जाते हैं. उदाहरण: |
यूनियन फ़ील्ड
|
|
owner |
फ़ाइल के मालिक का ईमेल पता. |
यूनियन फ़ील्ड
|
|
canAddChildren |
अनुरोध करने वाला व्यक्ति, इस फ़ोल्डर में बच्चों को जोड़ सकता है या नहीं. फ़ोल्डर के अलावा अन्य टाइप के लिए, यह हमेशा गलत होता है. |
टाइमस्टैम्प
| JSON के काेड में दिखाना |
|---|
{ "seconds": string, "nanos": integer } |
| फ़ील्ड | |
|---|---|
seconds |
यह Unix epoch 1970-01-01T00:00:00Z के बाद से यूटीसी समय के सेकंड को दिखाता है. यह -62135596800 और 253402300799 के बीच होना चाहिए. इसमें ये दोनों वैल्यू भी शामिल हैं. यह 0001-01-01T00:00:00Z से 9999-12-31T23:59:59Z के बीच की वैल्यू के बराबर होता है. |
nanos |
नैनोसेकंड रिज़ॉल्यूशन पर, सेकंड के नॉन-नेगेटिव फ़्रैक्शन. यह फ़ील्ड, अवधि का नैनोसेकंड वाला हिस्सा है. यह सेकंड का विकल्प नहीं है. भिन्नात्मक वैल्यू वाली नेगेटिव सेकंड वैल्यू में, नैनोसेकंड की नॉन-नेगेटिव वैल्यू होनी चाहिए. यह 0 और 99,99,99,999 के बीच होना चाहिए. |
टूल एनोटेशन
डेटा में बदलाव करने से जुड़ी जानकारी: ❌ | एक ही अनुरोध को कई बार भेजने पर भी नतीजे में कोई बदलाव न होने से जुड़ी जानकारी: ❌ | सिर्फ़ पढ़ने से जुड़ी जानकारी: ❌ | ओपन वर्ल्ड से जुड़ी जानकारी: ✅