Narzędzie: create_file
Wywołaj to narzędzie, aby utworzyć lub przesłać plik na Dysk Google.
Jeśli przesyłasz treści, w przypadku treści tekstowych użyj parametru „text_content”. W przypadku treści innych niż UTF-8 użyj pola „base64_content” i zakoduj dane w formacie base64, aby ustawić je w tym polu.
Po pomyślnym utworzeniu zwraca pojedynczy obiekt File.
Następujące typy MIME Dysku Google można utworzyć bez podawania treści:
application/vnd.google-apps.documentapplication/vnd.google-apps.spreadsheetapplication/vnd.google-apps.presentation
Domyślnie w przypadku tych typów MIME zostaną wykonane te konwersje:
text/plainnaapplication/vnd.google-apps.documenttext/csvnaapplication/vnd.google-apps.spreadsheet
Aby wyłączyć konwersje typów MIME Google, ustaw wartość disable_conversion_to_google_type na true.
Foldery można tworzyć, ustawiając typ MIME na application/vnd.google-apps.folder.
Podczas przesyłania treści pole content_mime_type jest wymagane i powinno odpowiadać typowi przesyłanej treści.
Ten przykład pokazuje, jak użyć curl, aby wywołać narzędzie MCP create_file.
| Żądanie 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 }' |
Schemat wejściowy
Prośba o przesłanie pliku.
CreateFileRequest
| Zapis JSON |
|---|
{ "title": string, "mimeType": string, "contentMimeType": string, "content": string, "base64Content": string, "textContent": string, "parentId": string, "disableConversionToGoogleType": boolean } |
| Pola | |
|---|---|
title |
Tytuł pliku. |
mimeType |
WYCOFANY. NIE UŻYWAJ!! Zamiast tego ustaw content_mime_type. |
contentMimeType |
Typ MIME przesyłanej treści. Wymagane, gdy podawany jest dowolny typ treści. |
content |
Treść pliku zakodowana w formacie base64. Pole content powinno być zawsze zakodowane w formacie base64, niezależnie od typu MIME pliku. WYCOFANY. Zamiast tego użyj base64_content lub text_content. |
base64Content |
Opcjonalnie. Treść zakodowana w formacie base64 do przesłania. Ustawienie tego pola i pola text_content jest błędem. |
textContent |
Opcjonalnie. Treść tekstowa (UTF-8) do przesłania. Ustawienie tego pola i pola base64_content jest błędem. |
parentId |
Identyfikator nadrzędny pliku. |
disableConversionToGoogleType |
Ustaw wartość true, aby zachować przekazany typ MIME treści i nie konwertować go na typ Google. Na przykład bez tego ustawienia typ MIME treści text/plain zostanie przekonwertowany na application/vnd.google-apps.document. Nie ma wpływu na typy, które nie mają odpowiednika w Google. |
Schemat wyjściowy
Zasób pliku.
Plik
| Zapis 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 } |
| Pola | |
|---|---|
id |
Identyfikator pobranego pliku. |
title |
Tytuł pliku. |
parentId |
(Opcjonalnie) identyfikator nadrzędny pliku. |
Pole zbiorcze Pole |
|
mimeType |
Typ MIME pliku. |
Pole zbiorcze Pole |
|
fileSize |
Rozmiar pliku w bajtach. |
Pole zbiorcze Pole |
|
description |
Opis pliku. |
Pole zbiorcze Pole |
|
fileExtension |
Oryginalne rozszerzenie pliku. To pole jest wypełniane tylko w przypadku plików, których zawartość jest przechowywana na Dysku. |
Pole zbiorcze Pole |
|
contentSnippet |
Wygenerowany fragment dotyczący zawartości pliku. |
Pole zbiorcze Pole |
|
viewUrl |
URL do wyświetlenia pliku. |
Pole zbiorcze Pole |
|
sharedWithMeTime |
Czas, kiedy plik został udostępniony zgłaszającemu. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: |
Pole zbiorcze Pole |
|
createdTime |
Czas utworzenia pliku. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: |
Pole zbiorcze Pole |
|
modifiedTime |
Najnowsza data modyfikacji pliku. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: |
Pole zbiorcze Pole |
|
viewedByMeTime |
Najnowsza data wyświetlenia pliku przez osobę wysyłającą prośbę. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: |
Pole zbiorcze Pole |
|
owner |
Adres e-mail właściciela pliku. |
Pole zbiorcze Pole |
|
canAddChildren |
Informuje, czy osoba wysyłająca prośbę może dodawać dzieci do tego folderu. W przypadku typów innych niż folder ta wartość jest zawsze fałszywa. |
Sygnatura czasowa
| Zapis JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Pola | |
|---|---|
seconds |
Liczba sekund czasu UTC od epoki systemu Unix (1970-01-01T00:00:00Z). Musi mieścić się w zakresie od -62135596800 do 253402300799 włącznie (co odpowiada okresowi od 0001-01-01T00:00:00Z do 9999-12-31T23:59:59Z). |
nanos |
Nieujemne ułamki sekundy z dokładnością do nanosekundy. To pole jest częścią czasu trwania w nanosekundach, a nie alternatywą dla sekund. Wartości ujemne sekund z ułamkami muszą nadal mieć nieujemne wartości nanosekund, które liczą czas do przodu. Musi mieścić się w zakresie od 0 do 999 999 999 włącznie. |
Adnotacje narzędzi
Wskazówka dotycząca działania destrukcyjnego: ❌ | Wskazówka dotycząca działania idempotentnego: ❌ | Wskazówka dotycząca działania tylko do odczytu: ❌ | Wskazówka dotycząca otwartego świata: ✅