Araç: create_file
Google Drive'da dosya oluşturmak veya yüklemek için bu aracı çağırın.
İçerik yüklüyorsanız metin içerikleri için "text_content" tercih edin. UTF8 olmayan içerikler için "base64_content" alanını kullanın ve bu alanda ayarlanacak verileri Base64 ile kodlayın.
Başarılı bir oluşturma işleminden sonra tek bir File nesnesi döndürür.
Aşağıdaki Google birinci taraf mime türleri, içerik sağlanmadan oluşturulabilir:
application/vnd.google-apps.documentapplication/vnd.google-apps.spreadsheetapplication/vnd.google-apps.presentation
Klasörler, mime türü application/vnd.google-apps.folder olarak ayarlanarak oluşturulabilir.
İçerik yüklerken content_mime_type alanı zorunludur ve yüklenen içeriğin türüyle eşleşmelidir.
Varsayılan olarak, desteklenen içerikler Google birinci taraf MIME türlerine dönüştürülür.
Birinci taraf MIME türleri için dönüşümleri devre dışı bırakmak üzere disable_conversion_to_google_type değerini true olarak ayarlayın.
Aşağıdaki örnekte, create_file MCP aracını çağırmak için curl simgesinin nasıl kullanılacağı gösterilmektedir.
| Curl İsteği |
|---|
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 }' |
Giriş Şeması
Dosya yükleme isteği
CreateFileRequest
| JSON gösterimi |
|---|
{ "title": string, "mimeType": string, "contentMimeType": string, "content": string, "base64Content": string, "textContent": string, "parentId": string, "disableConversionToGoogleType": boolean } |
| Alanlar | |
|---|---|
title |
Dosyanın başlığı. |
mimeType |
KULLANIMDAN KALDIRILDI. KULLANMAYIN!! Bunun yerine content_mime_type değerini ayarlayın. |
contentMimeType |
Yüklenen içeriğin MIME türü. Herhangi bir içerik türü sağlandığında zorunludur. |
content |
Dosyanın base64 olarak kodlanmış içeriği. İçerik alanı, dosyanın MIME türünden bağımsız olarak her zaman Base64 kodlu olmalıdır. KULLANIMDAN KALDIRILDI. Bunun yerine base64_content veya text_content kullanın. |
base64Content |
İsteğe bağlı. Yüklenecek Base64 kodlu içerik. Bu parametrenin ve text_content parametresinin ayarlanması hataya neden olur. |
textContent |
İsteğe bağlı. Yüklenecek (UTF-8) metin içeriği. Bu parametrenin ve base64_content parametresinin ayarlanması hataya neden olur. |
parentId |
Dosyanın üst öğe kimliği. |
disableConversionToGoogleType |
İletilen içerik MIME türünü korumak ve Google türüne dönüştürmemek için true olarak ayarlayın. Örneğin, bu olmadan text/plain içerik MIME türü, application/vnd.google-apps.document türüne dönüştürülür. Google karşılığı olmayan türler için etkisi yoktur. |
Çıkış Şeması
Dosya kaynağı.
Dosya
| JSON gösterimi |
|---|
{ "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 } |
| Alanlar | |
|---|---|
id |
Getirilen dosyanın kimliği. |
title |
Dosyanın başlığı. |
parentId |
Dosyanın üst öğesinin (isteğe bağlı) kimliği. |
|
|
mimeType |
Dosyanın MIME türü. |
|
|
fileSize |
Dosyanın bayt cinsinden boyutu. |
|
|
description |
Dosyanın açıklaması. |
|
|
fileExtension |
Dosyanın orijinal dosya uzantısı. Bu alan yalnızca Drive'da depolanan içeriğe sahip dosyalar için doldurulur. |
|
|
contentSnippet |
Dosyanın içeriği hakkında oluşturulan snippet. |
|
|
viewUrl |
Dosyayı görüntülemek için kullanılan URL. |
|
|
sharedWithMeTime |
Dosyanın istekte bulunan kullanıcıyla paylaşıldığı zaman Zaman damgasında RFC 3339 kullanılır. Yani oluşturulan çıkış her zaman Z ile normalleştirilir ve 0, 3, 6 veya 9 kesirli basamak kullanılır. "Z" dışındaki zaman farkları da kabul edilir. Örnekler: |
|
|
createdTime |
Dosyanın oluşturulduğu zaman. Zaman damgasında RFC 3339 kullanılır. Yani oluşturulan çıkış her zaman Z ile normalleştirilir ve 0, 3, 6 veya 9 kesirli basamak kullanılır. "Z" dışındaki zaman farkları da kabul edilir. Örnekler: |
|
|
modifiedTime |
Dosyanın en son değiştirildiği zaman. Zaman damgasında RFC 3339 kullanılır. Yani oluşturulan çıkış her zaman Z ile normalleştirilir ve 0, 3, 6 veya 9 kesirli basamak kullanılır. "Z" dışındaki zaman farkları da kabul edilir. Örnekler: |
|
|
viewedByMeTime |
Dosyanın istekte bulunan kullanıcı tarafından en son görüntülendiği zaman. Zaman damgasında RFC 3339 kullanılır. Yani oluşturulan çıkış her zaman Z ile normalleştirilir ve 0, 3, 6 veya 9 kesirli basamak kullanılır. "Z" dışındaki zaman farkları da kabul edilir. Örnekler: |
|
|
owner |
Dosyanın sahibinin e-posta adresi. |
|
|
canAddChildren |
İstekte bulunan kullanıcının bu klasöre alt öğe ekleyip ekleyemeyeceğini belirtir. Bu değer, klasör olmayan türler için her zaman yanlıştır. |
Zaman damgası
| JSON gösterimi |
|---|
{ "seconds": string, "nanos": integer } |
| Alanlar | |
|---|---|
seconds |
Unix sıfır zamanı 1970-01-01T00:00:00Z'den itibaren UTC zamanının saniyelerini gösterir. -62135596800 ile 253402300799 arasında (0001-01-01T00:00:00Z ile 9999-12-31T23:59:59Z'ye karşılık gelir) olmalıdır. |
nanos |
Nanosaniye çözünürlüğünde, negatif olmayan saniyenin kesirleri. Bu alan, saniyelere alternatif olarak değil, sürenin nanosaniye kısmını belirtmek için kullanılır. Kesirli negatif saniye değerleri, zaman içinde ileriye doğru sayılan negatif olmayan nanos değerlerine sahip olmalıdır. 0 ile 999.999.999 arasında olmalıdır (bu değerler dahil). |
Araç Ek Açıklamaları
Yıkıcı İpucu: ❌ | İdempotent İpucu: ❌ | Salt Okunur İpucu: ❌ | Açık Dünya İpucu: ✅
Yetkilendirme Kapsamları
Aşağıdaki OAuth kapsamlarından birini gerektirir:
https://www.googleapis.com/auth/drivehttps://www.googleapis.com/auth/drive.appdatahttps://www.googleapis.com/auth/drive.file