도구: create_file
이 도구를 호출하여 Google Drive에 파일을 만들거나 업로드합니다.
파일을 업로드하는 경우 업로드되는 파일의 MIME 유형과 관계없이 콘텐츠가 content 필드로 base64 인코딩되어야 합니다.
생성 성공 시 단일 File 객체를 반환합니다.
다음 Google Drive 퍼스트 파티 MIME 유형은 콘텐츠를 제공하지 않고도 만들 수 있습니다.
application/vnd.google-apps.documentapplication/vnd.google-apps.spreadsheetapplication/vnd.google-apps.presentation
기본적으로 다음 MIME 유형에 대해 다음 변환이 이루어집니다.
text/plain~application/vnd.google-apps.documenttext/csv~application/vnd.google-apps.spreadsheet
퍼스트 파티 MIME 유형의 전환을 사용 중지하려면 disable_conversion_to_google_type를 true로 설정합니다.
MIME 형식을 application/vnd.google-apps.folder로 설정하여 폴더를 만들 수 있습니다.
다음 샘플은 curl를 사용하여 create_file MCP 도구를 호출하는 방법을 보여줍니다.
| 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 }' |
입력 스키마
파일 업로드 요청
CreateFileRequest
| JSON 표현 |
|---|
{ "title": string, "mimeType": string, "content": string, "parentId": string, "disableConversionToGoogleType": boolean } |
| 필드 | |
|---|---|
title |
파일 제목입니다. |
mimeType |
업로드할 파일의 MIME 유형입니다. |
content |
base64로 인코딩된 파일의 콘텐츠입니다. 콘텐츠 필드는 파일의 MIME 유형과 관계없이 항상 base64로 인코딩되어야 합니다. |
parentId |
파일의 상위 ID입니다. |
disableConversionToGoogleType |
true인 경우 파일이 Google 유형으로 변환되지 않습니다. Google에 상응하는 항목이 없는 MIME 유형에는 영향을 미치지 않습니다. |
출력 스키마
파일 리소스입니다.
파일
| 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 } |
| 필드 | |
|---|---|
id |
가져온 파일의 ID입니다. |
title |
파일 제목입니다. |
parentId |
파일의 상위 항목 ID (선택사항)입니다. |
통합 필드
|
|
mimeType |
파일의 MIME 유형입니다. |
통합 필드
|
|
fileSize |
파일 크기(바이트)입니다. |
통합 필드
|
|
description |
파일에 대한 설명입니다. |
통합 필드
|
|
fileExtension |
파일의 원래 파일 확장자입니다. Drive에 저장된 콘텐츠가 있는 파일에만 채워집니다. |
통합 필드
|
|
contentSnippet |
파일 콘텐츠에 관한 생성된 스니펫입니다. |
통합 필드
|
|
viewUrl |
파일을 볼 수 있는 URL입니다. |
통합 필드
|
|
sharedWithMeTime |
파일이 요청자와 공유된 시간입니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
통합 필드
|
|
createdTime |
파일이 생성된 시간입니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
통합 필드
|
|
modifiedTime |
파일이 수정된 가장 최근 시간입니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
통합 필드
|
|
viewedByMeTime |
요청자가 파일을 본 가장 최근 시간입니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
통합 필드
|
|
owner |
파일 소유자의 이메일 주소입니다. |
타임스탬프
| JSON 표현 |
|---|
{ "seconds": string, "nanos": integer } |
| 필드 | |
|---|---|
seconds |
Unix epoch 1970-01-01T00:00:00Z 이후 UTC 시간의 초 단위로 표현합니다. -62135596800~253402300799 (0001-01-01T00:00:00Z~9999-12-31T23:59:59Z) 사이여야 합니다. |
nanos |
나노초 단위의 음수가 아닌 초수입니다. 이 필드는 기간의 나노초 부분이며 초의 대안이 아닙니다. 음수의 초수 값에는 시간에 반영되는 음수가 아닌 나노초 값이 있어야 합니다. 0~999,999,999(포함) 사이여야 합니다. |
도구 주석
파괴적 힌트: ❌ | 동일한 힌트: ❌ | 읽기 전용 힌트: ❌ | 오픈 월드 힌트: ✅