Narzędzie: copy_file
Wywołaj to narzędzie, aby skopiować istniejący plik na Dysku Google. Narzędzie umożliwia określenie nowego tytułu i folderu nadrzędnego dla kopii. Jeśli nie podasz tytułu, kopia będzie nosić nazwę „Kopia pliku {oryginalny tytuł}”. Jeśli nie podasz folderu nadrzędnego, kopia zostanie utworzona w tym samym folderze co plik oryginalny, chyba że użytkownik wysyłający żądanie nie ma dostępu do zapisu w tym folderze. W takim przypadku kopia zostanie utworzona w folderze głównym użytkownika. Po pomyślnym skopiowaniu narzędzie zwraca nowo utworzony obiekt File.
Poniższy przykład pokazuje, jak użyć narzędzia curl do wywołania narzędzia MCP copy_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": "copy_file", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Schemat wejściowy
Żądanie skopiowania pliku.
CopyFileRequest
| Zapis JSON |
|---|
{ "fileId": string, "title": string "parentId": string } |
| Pola | |
|---|---|
fileId |
Wymagane. Identyfikator pliku do skopiowania. |
Pole zbiorcze
|
|
title |
Tytuł nowo utworzonego pliku. Jeśli to pole jest puste, tytuł będzie mieć postać „Kopia pliku [oryginalny tytuł pliku]”. |
Pole zbiorcze
|
|
parentId |
Identyfikator nadrzędny nowo utworzonego pliku. Jeśli to pole jest puste, plik zostanie utworzony z tym samym folderem nadrzędnym co plik oryginalny. |
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 folderu nadrzędnego pliku. |
Pole zbiorcze
|
|
mimeType |
Typ MIME pliku. |
Pole zbiorcze
|
|
fileSize |
Rozmiar pliku w bajtach. |
Pole zbiorcze
|
|
description |
Opis pliku. |
Pole zbiorcze
|
|
fileExtension |
Oryginalne rozszerzenie pliku. To pole jest wypełniane tylko w przypadku plików, których zawartość jest przechowywana na Dysku. |
Pole zbiorcze
|
|
contentSnippet |
Wygenerowany fragment dotyczący zawartości pliku. |
Pole zbiorcze
|
|
viewUrl |
URL do wyświetlenia pliku. |
Pole zbiorcze
|
|
sharedWithMeTime |
Czas udostępnienia pliku osobie wysyłającej żądanie. 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
|
|
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
|
|
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
|
|
viewedByMeTime |
Najnowsza data wyświetlenia pliku przez osobę wysyłającą żądanie. 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
|
|
owner |
Adres e-mail właściciela pliku. |
Pole zbiorcze
|
|
canAddChildren |
Informuje, czy osoba wysyłająca żądanie może dodawać podfoldery do tego folderu. W przypadku typów innych niż folder to pole ma zawsze wartość false. |
Sygnatura czasowa
| Zapis JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Pola | |
|---|---|
seconds |
Liczba sekund czasu UTC od początku epoki systemu Unix (1970-01-01T00:00:00Z). Musi mieścić się w przedziale 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 w nanosekundach. To pole jest częścią 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 przedziale od 0 do 999 999 999 włącznie. |
Adnotacje narzędzia
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 działania w otwartym świecie: ✅