도구: search_files
구조화된 쿼리가 주어지면 Drive 파일을 검색하려면 이 도구를 호출하세요.
query 필드를 사용하려면 쿼리 검색 연산자를 사용해야 합니다.
쿼리 문자열에는 다음 세 부분이 포함됩니다. query_term operator values
query_term은 검색할 검색어 또는 필드입니다.operator는 쿼리 용어의 조건을 지정합니다.values는 검색 결과를 필터링하는 데 사용할 특정 값입니다.
검색어
다음 표에는 유효한 검색어와 설명이 나와 있습니다.
| 검색어 | 유효한 연산자 | 사용 |
|---|---|---|
title |
contains, =, != |
파일 제목입니다. 작은따옴표(')로 묶습니다. 쿼리에서 작은따옴표를 \'로 이스케이프 처리합니다(예: 'Valentine\'s Day'). |
fullText |
contains |
파일 콘텐츠의 title 또는 텍스트가 일치하는지 여부입니다. 작은따옴표(')로 묶습니다. 쿼리에서 작은따옴표를 \'로 이스케이프 처리합니다(예: 'Valentine\'s Day'). |
mimeType |
contains, =, != |
파일의 MIME 유형입니다. 작은따옴표(')로 묶습니다. 쿼리에서 작은따옴표를 \'로 이스케이프 처리합니다(예: 'Valentine\'s Day'). |
modifiedTime |
<=, <, =, !=, >, >= |
마지막 파일 수정 날짜입니다. RFC 3339 형식입니다. 기본 시간대는 UTC입니다(예: 2012-06-04T12:00:00-08:00). date 유형의 필드는 비교할 수 없습니다. |
viewedByMeTime |
<=, <, =, !=, >, >= |
사용자가 파일을 마지막으로 본 날짜입니다. RFC 3339 형식입니다. 기본 시간대는 UTC입니다(예: 2012-06-04T12:00:00-08:00). date 유형의 필드는 비교할 수 없습니다. |
parentId |
=, != |
상위 요소가 지정된 ID와 동일한지 여부입니다. root는 기본 계층 구조로 작동하는 사용자의 '내 드라이브'를 지정하는 데 사용할 수 있습니다. |
owner |
=, != |
파일을 소유한 사용자입니다. me를 사용하여 요청을 보내는 사용자를 지정할 수 있습니다. |
sharedWithMe |
=, != |
사용자의 '공유 문서함' 컬렉션에 있는 파일입니다. 모든 파일 사용자가 파일의 액세스 제어 목록 (ACL)에 있습니다. true 또는 false일 수 있습니다. |
createdTime |
<=, <, =, !=, >, >= |
파일이 생성된 날짜입니다. RFC 3339 형식을 사용합니다. 기본 시간대는 UTC입니다(예: 2012-06-04T12:00:00-08:00). |
쿼리 연산자
다음 표에는 유효한 쿼리 연산자가 나와 있습니다.
| 연산자 | 사용 |
|---|---|
contains |
한 문자열의 콘텐츠가 다른 문자열에 있습니다. |
= |
문자열 또는 불리언의 콘텐츠가 다른 콘텐츠와 같습니다. |
!= |
문자열 또는 불리언의 콘텐츠가 다른 콘텐츠와 같지 않습니다. |
< |
값이 다른 값보다 작습니다. |
<= |
값이 다른 값보다 작거나 같습니다. |
> |
값이 다른 값보다 큽니다. |
>= |
값이 다른 값보다 크거나 같습니다. |
in |
요소가 컬렉션 내에 포함되어 있습니다. |
and |
두 쿼리와 모두 일치하는 항목을 반환합니다. |
or |
두 쿼리 중 하나와 일치하는 항목을 반환합니다. |
not |
검색어를 부정합니다. |
has |
컬렉션에 매개변수와 일치하는 요소가 포함되어 있습니다. |
다음은 쿼리의 예입니다.
title contains 'hello' and title contains 'goodbye'modifiedTime > '2024-01-01T00:00:00Z' and (mimeType contains 'image/' or mimeType contains 'video/')parentId = '1234567'fullText contains 'hello'owner = 'test@example.org'sharedWithMe = trueowner = 'me'(사용자가 소유한 파일)
next_page_token를 사용하여 결과를 페이지로 나눕니다. 빈 응답은 반환할 결과가 없거나 더 이상 결과가 없음을 나타냅니다.
다음 샘플은 curl를 사용하여 search_files 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": "search_files", "arguments": { // provide these details according to the tool MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
입력 스키마
파일 검색 요청
SearchFilesRequest
| JSON 표현 |
|---|
{ "query": string, "pageToken": string "pageSize": integer "excludeContentSnippets": boolean } |
| 필드 | |
|---|---|
query |
검색어입니다. |
통합 필드
|
|
pageToken |
페이지로 나누기에 사용할 페이지 토큰입니다. |
통합 필드
|
|
pageSize |
각 페이지에서 반환할 최대 파일 수입니다. |
통합 필드
|
|
excludeContentSnippets |
true인 경우 콘텐츠 스니펫이 대답에서 제외됩니다. |
출력 스키마
파일 검색에 대한 응답입니다.
SearchFilesResponse
| JSON 표현 |
|---|
{
"files": [
{
object ( |
| 필드 | |
|---|---|
files[] |
출력 전용입니다. 파일 목록입니다. |
통합 필드
|
|
nextPageToken |
다음 페이지 토큰입니다. |
파일
| 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(포함) 사이여야 합니다. |
도구 주석
파괴적 힌트: ❌ | 동일한 힌트: ✅ | 읽기 전용 힌트: ✅ | 오픈 월드 힌트: ❌