MCP Tools Reference: drivemcp.googleapis.com

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.document
  • application/vnd.google-apps.spreadsheet
  • application/vnd.google-apps.presentation

Domyślnie w przypadku tych typów MIME zostaną wykonane te konwersje:

  • text/plain na application/vnd.google-apps.document
  • text/csv na application/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

string

Tytuł pliku.

mimeType

string

WYCOFANY. NIE UŻYWAJ!! Zamiast tego ustaw content_mime_type.

contentMimeType

string

Typ MIME przesyłanej treści. Wymagane, gdy podawany jest dowolny typ treści.

content

string

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

string

Opcjonalnie. Treść zakodowana w formacie base64 do przesłania. Ustawienie tego pola i pola text_content jest błędem.

textContent

string

Opcjonalnie. Treść tekstowa (UTF-8) do przesłania. Ustawienie tego pola i pola base64_content jest błędem.

parentId

string

Identyfikator nadrzędny pliku.

disableConversionToGoogleType

boolean

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

string

Identyfikator pobranego pliku.

title

string

Tytuł pliku.

parentId

string

(Opcjonalnie) identyfikator nadrzędny pliku.

Pole zbiorcze _mime_type.

Pole _mime_type może mieć tylko jedną z tych wartości:

mimeType

string

Typ MIME pliku.

Pole zbiorcze _file_size.

Pole _file_size może mieć tylko jedną z tych wartości:

fileSize

string (int64 format)

Rozmiar pliku w bajtach.

Pole zbiorcze _description.

Pole _description może mieć tylko jedną z tych wartości:

description

string

Opis pliku.

Pole zbiorcze _file_extension.

Pole _file_extension może mieć tylko jedną z tych wartości:

fileExtension

string

Oryginalne rozszerzenie pliku. To pole jest wypełniane tylko w przypadku plików, których zawartość jest przechowywana na Dysku.

Pole zbiorcze _content_snippet.

Pole _content_snippet może mieć tylko jedną z tych wartości:

contentSnippet

string

Wygenerowany fragment dotyczący zawartości pliku.

Pole zbiorcze _view_url.

Pole _view_url może mieć tylko jedną z tych wartości:

viewUrl

string

URL do wyświetlenia pliku.

Pole zbiorcze _shared_with_me_time.

Pole _shared_with_me_time może mieć tylko jedną z tych wartości:

sharedWithMeTime

string (Timestamp format)

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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" lub "2014-10-02T15:01:23+05:30".

Pole zbiorcze _created_time.

Pole _created_time może mieć tylko jedną z tych wartości:

createdTime

string (Timestamp format)

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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" lub "2014-10-02T15:01:23+05:30".

Pole zbiorcze _modified_time.

Pole _modified_time może mieć tylko jedną z tych wartości:

modifiedTime

string (Timestamp format)

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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" lub "2014-10-02T15:01:23+05:30".

Pole zbiorcze _viewed_by_me_time.

Pole _viewed_by_me_time może mieć tylko jedną z tych wartości:

viewedByMeTime

string (Timestamp format)

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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" lub "2014-10-02T15:01:23+05:30".

Pole zbiorcze _owner.

Pole _owner może mieć tylko jedną z tych wartości:

owner

string

Adres e-mail właściciela pliku.

Pole zbiorcze _can_add_children.

Pole _can_add_children może mieć tylko jedną z tych wartości:

canAddChildren

boolean

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

string (int64 format)

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

integer

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: ✅