כלי: create_file
קוראים לכלי הזה כדי ליצור או להעלות קובץ ל-Google Drive.
אם מעלים תוכן, עדיף להשתמש בערך text_content לתוכן טקסטואלי. אם התוכן לא בקידוד UTF8, צריך להשתמש בשדה base64_content ולקודד את הנתונים ב-base64 כדי להגדיר אותם בשדה הזה.
הפונקציה מחזירה אובייקט File יחיד אם היא יוצרת קובץ בהצלחה.
אפשר ליצור את סוגי ה-MIME הבאים של צד ראשון ב-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
כדי להשבית המרות עבור סוגי MIME של אינטראקציה ישירה, מגדירים את disable_conversion_to_google_type כ-true.
אפשר ליצור תיקיות על ידי הגדרת סוג ה-MIME ל-application/vnd.google-apps.folder.
כשמעלים תוכן, חובה למלא את השדה content_mime_type והוא צריך להתאים לסוג התוכן שמעלים.
בדוגמה הבאה אפשר לראות איך משתמשים ב-curl כדי להפעיל את כלי ה-MCP create_file.
| בקשת Curl |
|---|
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 |
הוצא משימוש. לא להשתמש!! במקום זאת, צריך להגדיר את content_mime_type. |
contentMimeType |
סוג ה-MIME של התוכן שמועלה. חובה לציין את המאפיין הזה כשמספקים תוכן מכל סוג. |
content |
התוכן של הקובץ בקידוד base64. השדה content צריך תמיד להיות בקידוד base64, ללא קשר לסוג ה-MIME של הקובץ. הוצא משימוש. במקום זאת, צריך להשתמש ב-base64_content או ב-text_content. |
base64Content |
אופציונלי. התוכן בקידוד base64 שרוצים להעלות. הגדרת הערך הזה יחד עם text_content היא שגיאה. |
textContent |
אופציונלי. תוכן הטקסט (UTF-8) שרוצים להעלות. הגדרת הערך הזה יחד עם base64_content היא שגיאה. |
parentId |
מזהה ההורה של הקובץ. |
disableConversionToGoogleType |
מגדירים את הערך כ-true כדי לשמור את סוג ה-MIME של התוכן שהועבר ולא להמיר אותו לסוג של Google. לדוגמה, בלי ההגדרה הזו, סוג MIME של תוכן text/plain יומר ל-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 |
כתובת ה-URL לצפייה בקובץ. |
שדה איחוד הערך |
|
sharedWithMeTime |
השעה שבה הקובץ שותף עם מגיש הבקשה. הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z עם 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים מלבד Z. דוגמאות: |
שדה איחוד הערך |
|
createdTime |
השעה שבה הקובץ נוצר. הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z עם 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים מלבד Z. דוגמאות: |
שדה איחוד הערך |
|
modifiedTime |
השעה האחרונה שבה הקובץ שונה. הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z עם 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים מלבד Z. דוגמאות: |
שדה איחוד הערך |
|
viewedByMeTime |
הזמן האחרון שבו המבקש צפה בקובץ. הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z עם 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים מלבד Z. דוגמאות: |
שדה איחוד הערך |
|
owner |
כתובת האימייל של הבעלים של הקובץ. |
שדה איחוד הערך |
|
canAddChildren |
אם מגיש הבקשה יכול להוסיף ילדים לתיקייה הזו. הערך הזה תמיד false עבור סוגים שאינם תיקיות. |
חותמת זמן
| ייצוג ב-JSON |
|---|
{ "seconds": string, "nanos": integer } |
| שדות | |
|---|---|
seconds |
מייצג את השניות של זמן UTC מאז ראשית זמן יוניקס (Unix epoch) ב-1970-01-01T00:00:00Z. הערך חייב להיות בין -62135596800 ל-253402300799 כולל (שמתאים לטווח 0001-01-01T00:00:00Z עד 9999-12-31T23:59:59Z). |
nanos |
שברים לא שליליים של שנייה ברזולוציית ננו-שנייה. השדה הזה מייצג את החלק של משך הזמן בננו-שניות, ולא מהווה חלופה לשניות. ערכי שניות שליליים עם שברים עדיין צריכים לכלול ערכי ננו-שניות לא שליליים שסופרים קדימה בזמן. הערך חייב להיות בין 0 ל-999,999,999, כולל. |
הערות על כלי
רמז הרסני: ❌ | רמז אידמפוטנטי: ❌ | רמז לקריאה בלבד: ❌ | רמז לעולם פתוח: ✅