ابزار: create_file
برای ایجاد یا آپلود فایل در گوگل درایو، از این ابزار استفاده کنید.
در صورت آپلود فایل، صرف نظر از mimetype فایل آپلود شده، محتوا باید به صورت base64 در فیلد content کدگذاری شود.
پس از ایجاد موفقیتآمیز، یک شیء فایل واحد را برمیگرداند.
انواع MIME شخص ثالث زیر در گوگل درایو را میتوان بدون ارائه محتوا ایجاد کرد:
-
application/vnd.google-apps.document -
application/vnd.google-apps.spreadsheet -
application/vnd.google-apps.presentation
به طور پیشفرض، تبدیلهای زیر برای انواع MIME زیر انجام میشود:
-
text/plainبهapplication/vnd.google-apps.document -
text/csvبهapplication/vnd.google-apps.spreadsheet
برای غیرفعال کردن تبدیلها برای انواع MIME شخص ثالث، disable_conversion_to_google_type را روی true تنظیم کنید.
پوشهها را میتوان با تنظیم نوع mime به application/vnd.google-apps.folder ایجاد کرد.
نمونه زیر نحوه استفاده از curl برای فراخوانی ابزار create_file MCP را نشان میدهد.
| درخواست کرل |
|---|
curl --location 'https://drivemcp.googleapis.com/mcp' \ --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 MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
طرحواره ورودی
درخواست آپلود فایل.
درخواست ایجاد فایل
| نمایش JSON |
|---|
{ "title": string, "mimeType": string, "content": string, "parentId": string, "disableConversionToGoogleType": boolean } |
| فیلدها | |
|---|---|
title | عنوان فایل. |
mimeType | نوع MIME فایلی که قرار است آپلود شود. |
content | محتوای فایل به صورت base64 کدگذاری شده است. فیلد محتوا باید صرف نظر از نوع mime فایل، همیشه به صورت base64 کدگذاری شود. |
parentId | شناسه والد فایل. |
disableConversionToGoogleType | اگر درست باشد، فایل به نوع گوگل تبدیل نمیشود. برای انواع mime که معادل گوگل ندارند، تأثیری ندارد. |
طرحواره خروجی
یک منبع فایل.
فایل
| نمایش 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 } |
| فیلدها | |
|---|---|
id | شناسه فایلی که واکشی شده است. |
title | عنوان فایل. |
parentId | شناسه (اختیاری) والد فایل. |
فیلد یونیون | |
mimeType | نوع MIME فایل. |
فیلد یونیون | |
fileSize | اندازه فایل بر حسب بایت. |
فیلد اتحادیه | |
description | توضیحات فایل. |
فیلد یونیون | |
fileExtension | پسوند اصلی فایل، این فقط برای فایلهایی که محتوای آنها در Drive ذخیره شده است، استفاده میشود. |
فیلد یونیون | |
contentSnippet | قطعه کدی در مورد محتوای فایل تولید شد. |
فیلد یونیون | |
viewUrl | آدرس اینترنتی برای مشاهده فایل. |
فیلد اتحادیه | |
sharedWithMeTime | مدت زمانی که فایل با درخواستکننده به اشتراک گذاشته شده است. از RFC 3339 استفاده میکند، که در آن خروجی تولید شده همیشه به صورت Z-normalized خواهد بود و از ارقام کسری ۰، ۳، ۶ یا ۹ استفاده میکند. آفستهای غیر از "Z" نیز پذیرفته میشوند. مثالها: |
فیلد اتحادیه | |
createdTime | زمان ایجاد فایل. از RFC 3339 استفاده میکند، که در آن خروجی تولید شده همیشه به صورت Z-normalized خواهد بود و از ارقام کسری ۰، ۳، ۶ یا ۹ استفاده میکند. آفستهای غیر از "Z" نیز پذیرفته میشوند. مثالها: |
فیلد اتحادیه | |
modifiedTime | آخرین زمانی که فایل تغییر داده شده است. از RFC 3339 استفاده میکند، که در آن خروجی تولید شده همیشه به صورت Z-normalized خواهد بود و از ارقام کسری ۰، ۳، ۶ یا ۹ استفاده میکند. آفستهای غیر از "Z" نیز پذیرفته میشوند. مثالها: |
فیلد اتحادیه | |
viewedByMeTime | آخرین زمانی که فایل توسط درخواستکننده مشاهده شده است. از RFC 3339 استفاده میکند، که در آن خروجی تولید شده همیشه به صورت Z-normalized خواهد بود و از ارقام کسری ۰، ۳، ۶ یا ۹ استفاده میکند. آفستهای غیر از "Z" نیز پذیرفته میشوند. مثالها: |
| |
owner | آدرس ایمیل صاحب فایل. |
مهر زمانی
| نمایش JSON |
|---|
{ "seconds": string, "nanos": integer } |
| فیلدها | |
|---|---|
seconds | ثانیههای زمان UTC را از زمان یونیکس ۱۹۷۰-۰۱-۰۱T۰۰:۰۰:۰۰Z نشان میدهد. باید بین -۶۲۱۳۵۵۹۶۸۰۰ و ۲۵۳۴۰۲۳۰۰۷۹۹ باشد (که معادل ۰۰۰۱-۰۱-۰۱T۰۰:۰۰:۰۰Z تا ۹۹۹۹-۱۲-۳۱T۲۳:۵۹:۵۹Z است). |
nanos | کسرهای غیرمنفی ثانیه با وضوح نانوثانیه. این فیلد بخش نانوثانیه از مدت زمان است، نه جایگزینی برای ثانیه. مقادیر منفی ثانیه با کسرها باید همچنان دارای مقادیر نانوثانیه غیرمنفی باشند که در زمان به جلو شمارش میشوند. باید بین ۰ تا ۹۹۹۹۹۹۹۹۹۹ باشد. |
حاشیهنویسی ابزار
راهنمایی مخرب: ❌ | راهنمایی بیاثر: ❌ | راهنمایی فقط خواندنی: ❌ | راهنمایی جهان باز: ✅