टूल: create_file
Google Drive में कोई फ़ाइल बनाने या अपलोड करने के लिए, इस टूल को कॉल करें.
अगर कॉन्टेंट अपलोड किया जा रहा है, तो टेक्स्ट वाले कॉन्टेंट के लिए "text_content" का इस्तेमाल करें. UTF8 फ़ॉर्मैट में नहीं मौजूद कॉन्टेंट के लिए, "base64_content" फ़ील्ड का इस्तेमाल करें. साथ ही, उस फ़ील्ड पर सेट करने के लिए डेटा को base64 फ़ॉर्मैट में एन्कोड करें.
फ़ाइल बनाने के बाद, एक फ़ाइल ऑब्जेक्ट दिखाता है.
Google के पहले पक्ष (ग्राहक) के इन माइम टाइप को कॉन्टेंट दिए बिना बनाया जा सकता है:
application/vnd.google-apps.documentapplication/vnd.google-apps.spreadsheetapplication/vnd.google-apps.presentation
माइम टाइप को application/vnd.google-apps.folder पर सेट करके फ़ोल्डर बनाए जा सकते हैं.
कॉन्टेंट अपलोड करते समय, content_mime_type फ़ील्ड भरना ज़रूरी है. साथ ही, यह अपलोड किए जा रहे कॉन्टेंट के टाइप से मेल खाना चाहिए.
डिफ़ॉल्ट रूप से, काम करने वाले कॉन्टेंट को Google के पहले पक्ष के MIME टाइप में बदल दिया जाएगा.
पहले पक्ष के माइम टाइप के लिए कन्वर्ज़न बंद करने के लिए, disable_conversion_to_google_type को true पर सेट करें.
यहां दिए गए सैंपल में, curl का इस्तेमाल करके create_file एमसीपी टूल को चालू करने का तरीका बताया गया है.
| कर्ल अनुरोध |
|---|
curl --location 'https://drivemcp.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_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 के बीच होना चाहिए. |
टूल एनोटेशन
बदलाव करने से जुड़ी जानकारी: ❌ | एक ही बार लागू होने से जुड़ी जानकारी: ❌ | सिर्फ़ पढ़ने से जुड़ी जानकारी: ❌ | ओपन वर्ल्ड से जुड़ी जानकारी: ✅
अनुमति पाने के लिंक
इसके लिए, इनमें से किसी एक OAuth स्कोप की ज़रूरत होती है:
https://www.googleapis.com/auth/drivehttps://www.googleapis.com/auth/drive.appdatahttps://www.googleapis.com/auth/drive.file