MCP Tools Reference: drivemcp.googleapis.com

Narzędzie: create_file

Wywołaj to narzędzie, aby utworzyć plik na Dysku Google lub przesłać go na Dysk.

Jeśli przesyłasz plik, treść musi być zakodowana w formacie Base64 w polu content niezależnie od typu MIME przesyłanego pliku.

W przypadku pomyślnego utworzenia 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 będą przeprowadzane te konwersje:

  • Od text/plain do application/vnd.google-apps.document
  • Od text/csv do application/vnd.google-apps.spreadsheet

Aby wyłączyć konwersje w przypadku własnych typów MIME, ustaw wartość disable_conversion_to_google_type na „true”.

Foldery można tworzyć, ustawiając typ MIME na application/vnd.google-apps.folder.

Poniższy przykład pokazuje, jak za pomocą znaku curl wywołać narzędzie create_file MCP.

Żądanie curl
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
}'
                

Schemat wejściowy

Prośba o przesłanie pliku.

CreateFileRequest

Zapis JSON
{
  "title": string,
  "mimeType": string,
  "content": string,
  "parentId": string,
  "disableConversionToGoogleType": boolean
}
Pola
title

string

Tytuł pliku.

mimeType

string

Typ MIME pliku do przesłania.

content

string

Treść pliku zakodowana w formacie Base64. Pole content powinno być zawsze zakodowane w formacie Base64, niezależnie od typu MIME pliku.

parentId

string

Identyfikator nadrzędny pliku.

disableConversionToGoogleType

boolean

Jeśli wartość to „true”, plik nie zostanie przekonwertowany na typ Google. Nie ma wpływu na typy MIME, 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
}
Pola
id

string

Identyfikator pobranego pliku.

title

string

Tytuł pliku.

parentId

string

(Opcjonalny) identyfikator elementu nadrzędnego 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 kodu dotyczący zawartości pliku.

Pole zbiorcze _view_url.

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

viewUrl

string

URL umożliwiający wyświetlenie 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)

godzinę udostępnienia pliku osobie, która o to poprosiła;

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)

Ostatni czas 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)

Najnowszy czas, w którym plik został wyświetlony przez osobę przeglądającą.

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.

Sygnatura czasowa

Zapis JSON
{
  "seconds": string,
  "nanos": integer
}
Pola
seconds

string (int64 format)

Reprezentuje sekundy czasu UTC od epoki uniksowej 1970-01-01T00:00:00Z. Musi mieścić się w przedziale od -62135596800 do 253402300799 (włącznie), co odpowiada zakresowi od 0001-01-01T00:00:00Z do 9999-12-31T23:59:59Z.

nanos

integer

Nieujemne ułamki sekundy w rozdzielczości nanosekundowej. To pole zawiera część czasu trwania w nanosekundach, a nie alternatywę dla sekund. Ujemne wartości sekund z ułamkami muszą 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

Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ❌ | Open World Hint: ✅