ツール: search_files
構造化クエリ(構文: query_term operator values)を使用して、ドライブ ファイルを検索します。句は and、or、not、かっこで組み合わせます。文字列値は単一引用符で囲む必要があります。埋め込み引用符は \' としてエスケープします。
クエリの用語と演算子:
title(演算子: contains、=、!=)- ファイルのタイトルfullText(演算子: contains)- タイトルまたは本文mimeType(演算子: contains、=、!=)- MIME タイプmodifiedTime、viewedByMeTime、createdTime(演算子:<=、<、=、!=、>、>=)。RFC 3339 UTC(例:2012-06-04T12:00:00-08:00)を使用します。日付型は比較できません。parentId(演算子:=、!=)。ユーザーの [マイドライブ] には'root'を使用します。owner(演算子:=、!=)。リクエスト元のユーザーには'me'を使用します。sharedWithMe(演算子:=、!=)。値:trueまたはfalse。
その他の演算子: and、or、not。
例:
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/v1' \ --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's 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 "canAddChildren": boolean } |
| フィールド | |
|---|---|
id |
取得したファイルの ID。 |
title |
ファイルのタイトル。 |
parentId |
ファイルの親の ID(省略可)。 |
共用体フィールド
|
|
mimeType |
ファイルの MIME タイプ。 |
共用体フィールド
|
|
fileSize |
ファイルのサイズ(バイト単位)。 |
共用体フィールド
|
|
description |
ファイルの説明。 |
共用体フィールド
|
|
fileExtension |
ファイルの元のファイル拡張子。これは、ドライブにコンテンツが保存されているファイルに対してのみ設定されます。 |
共用体フィールド
|
|
contentSnippet |
ファイルの内容に関する生成されたスニペット。 |
共用体フィールド
|
|
viewUrl |
ファイルを表示するための URL。 |
共用体フィールド
|
|
sharedWithMeTime |
ファイルがリクエスト元と共有された時刻。 RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
共用体フィールド
|
|
createdTime |
ファイルが作成された時刻。 RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
共用体フィールド
|
|
modifiedTime |
ファイルが最後に変更された時刻。 RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
共用体フィールド
|
|
viewedByMeTime |
リクエスト元がファイルを最後に閲覧した時刻。 RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
共用体フィールド
|
|
owner |
ファイルのオーナーのメールアドレス。 |
共用体フィールド
|
|
canAddChildren |
リクエスト元がこのフォルダに子を追加できるかどうか。フォルダ以外のタイプの場合、これは常に false です。 |
タイムスタンプ
| JSON 表現 |
|---|
{ "seconds": string, "nanos": integer } |
| フィールド | |
|---|---|
seconds |
UNIX エポック 1970-01-01T00:00:00Z からの UTC 時刻の秒数を表します。-62135596800~253402300799 の範囲(両端を含む)にする必要があります(これは 0001-01-01T00:00:00Z~9999-12-31T23:59:59Z に対応します)。 |
nanos |
ナノ秒分解能による、秒の負ではない小数以下部分。このフィールドは、秒の代替ではなく、期間のナノ秒部分です。小数以下を含む負の秒の値は、時間を前方にカウントする負ではない nanos 値を持つ必要があります。0 ~ 999,999,999 にする必要があります(両端を含む)。 |
ツールのアノテーション
破壊的ヒント: ❌ | べき等ヒント: ✅ | 読み取り専用ヒント: ✅ | オープン ワールド ヒント: ❌