MCP Tools Reference: drivemcp.googleapis.com

Công cụ: search_files

Gọi công cụ này để tìm kiếm tệp trên Drive dựa trên một truy vấn có cấu trúc.

Trường query yêu cầu sử dụng toán tử tìm kiếm truy vấn.

Một chuỗi truy vấn gồm 3 phần sau: query_term operator values trong đó:

  • query_term là cụm từ hoặc trường truy vấn để tìm kiếm.
  • operator chỉ định điều kiện cho cụm từ tìm kiếm.
  • values là những giá trị cụ thể mà bạn có thể dùng để lọc kết quả tìm kiếm.

Cụm từ tìm kiếm

Bảng sau đây liệt kê các cụm từ tìm kiếm hợp lệ cùng với nội dung mô tả:

Cụm từ tìm kiếm Toán tử hợp lệ Cách sử dụng
title contains, =, != Tiêu đề của tệp. Đặt trong dấu nháy đơn ('). Thoát dấu nháy đơn trong các truy vấn bằng \', chẳng hạn như 'Valentine\'s Day'.
fullText contains title hoặc văn bản trong nội dung của tệp có khớp hay không. Đặt trong dấu nháy đơn ('). Thoát dấu nháy đơn trong các truy vấn bằng \', chẳng hạn như 'Valentine\'s Day'.
mimeType contains, =, != Loại MIME của tệp. Đặt trong dấu nháy đơn ('). Thoát dấu nháy đơn trong các truy vấn bằng \', chẳng hạn như 'Valentine\'s Day'.
modifiedTime <=, <, =, !=, >, >= Ngày sửa đổi tệp gần đây nhất. Định dạng RFC 3339, múi giờ mặc định là UTC, chẳng hạn như 2012-06-04T12:00:00-08:00. Bạn không thể so sánh các trường thuộc loại date.
viewedByMeTime <=, <, =, !=, >, >= Ngày mà người dùng xem tệp lần gần đây nhất. Định dạng RFC 3339, múi giờ mặc định là UTC, chẳng hạn như 2012-06-04T12:00:00-08:00. Bạn không thể so sánh các trường thuộc loại date.
parentId =, != Liệu phần tử mẹ có bằng với mã nhận dạng đã chỉ định hay không. root có thể dùng để chỉ định "Drive của tôi" của người dùng, đóng vai trò là hệ thống phân cấp chính của họ.
owner =, != Người dùng sở hữu tệp. Bạn có thể dùng me để chỉ định người dùng đang đưa ra yêu cầu.
sharedWithMe =, != Các tệp trong bộ sưu tập "Được chia sẻ với tôi" của người dùng. Tất cả người dùng tệp đều có trong Danh sách kiểm soát quyền truy cập (ACL) của tệp. Có thể là true hoặc false.
createdTime <=, <, =, !=, >, >= Ngày tạo tệp. Sử dụng định dạng RFC 3339, múi giờ mặc định là UTC, chẳng hạn như 2012-06-04T12:00:00-08:00.

Toán tử truy vấn

Bảng sau đây liệt kê các toán tử truy vấn hợp lệ:

Đơn vị tổ chức Cách sử dụng
contains Nội dung của một chuỗi có trong chuỗi kia.
= Nội dung của một chuỗi hoặc boolean bằng với nội dung của chuỗi hoặc boolean khác.
!= Nội dung của một chuỗi hoặc boolean không bằng với nội dung của chuỗi hoặc boolean khác.
< Một giá trị nhỏ hơn một giá trị khác.
<= Một giá trị nhỏ hơn hoặc bằng một giá trị khác.
> Một giá trị lớn hơn một giá trị khác.
>= Một giá trị lớn hơn hoặc bằng một giá trị khác.
in Một phần tử nằm trong một bộ sưu tập.
and Trả về những mục khớp với cả hai truy vấn.
or Trả về các mục khớp với một trong hai truy vấn.
not Phủ định một cụm từ tìm kiếm.
has Một tập hợp chứa một phần tử khớp với các tham số.

Sau đây là một số ví dụ về truy vấn:

  • 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 = true
  • owner = 'me' (đối với tệp thuộc sở hữu của người dùng)

Sử dụng next_page_token để phân trang kết quả. Một phản hồi trống cho biết không có kết quả hoặc không còn kết quả nào để trả về.

Mẫu sau đây minh hoạ cách sử dụng curl để gọi công cụ search_files MCP.

Yêu cầu 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
}'
                

Giản đồ đầu vào

Yêu cầu tìm kiếm tệp.

SearchFilesRequest

Biểu diễn dưới dạng JSON
{
  "query": string,

  "pageToken": string

  "pageSize": integer

  "excludeContentSnippets": boolean
}
Trường
query

string

Cụm từ tìm kiếm.

Trường nhóm _page_token.

_page_token chỉ có thể là một trong những trạng thái sau:

pageToken

string

Mã thông báo trang dùng để phân trang.

Trường nhóm _page_size.

_page_size chỉ có thể là một trong những trạng thái sau:

pageSize

integer

Số lượng tệp tối đa cần trả về trong mỗi trang.

Trường nhóm _exclude_content_snippets.

_exclude_content_snippets chỉ có thể là một trong những trạng thái sau:

excludeContentSnippets

boolean

Nếu đúng, đoạn nội dung sẽ bị loại trừ khỏi phản hồi.

Giản đồ đầu ra

Phản hồi đối với tệp tìm kiếm.

SearchFilesResponse

Biểu diễn dưới dạng JSON
{
  "files": [
    {
      object (File)
    }
  ],

  "nextPageToken": string
}
Trường
files[]

object (File)

Chỉ có đầu ra. Danh sách tệp.

Trường nhóm _next_page_token.

_next_page_token chỉ có thể là một trong những trạng thái sau:

nextPageToken

string

Mã thông báo trang tiếp theo.

Tệp

Biểu diễn dưới dạng 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
}
Trường
id

string

Mã của tệp đã được tìm nạp.

title

string

Tiêu đề của tệp.

parentId

string

Mã nhận dạng (không bắt buộc) của thư mục mẹ của tệp.

Trường nhóm _mime_type.

_mime_type chỉ có thể là một trong những trạng thái sau:

mimeType

string

Loại MIME của tệp.

Trường nhóm _file_size.

_file_size chỉ có thể là một trong những trạng thái sau:

fileSize

string (int64 format)

Kích thước của tệp tính bằng byte.

Trường nhóm _description.

_description chỉ có thể là một trong những trạng thái sau:

description

string

Nội dung mô tả tệp.

Trường nhóm _file_extension.

_file_extension chỉ có thể là một trong những trạng thái sau:

fileExtension

string

Phần mở rộng tệp gốc của tệp, chỉ được điền sẵn cho những tệp có nội dung được lưu trữ trong Drive.

Trường nhóm _content_snippet.

_content_snippet chỉ có thể là một trong những trạng thái sau:

contentSnippet

string

Đoạn trích được tạo về nội dung của tệp.

Trường nhóm _view_url.

_view_url chỉ có thể là một trong những trạng thái sau:

viewUrl

string

URL để xem tệp.

Trường nhóm _shared_with_me_time.

_shared_with_me_time chỉ có thể là một trong những trạng thái sau:

sharedWithMeTime

string (Timestamp format)

Thời điểm tệp được chia sẻ với người yêu cầu.

Hãy dùng RFC 3339, trong đó dữ liệu đầu ra được tạo sẽ luôn được chuẩn hoá theo múi giờ và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các khoảng lệch khác ngoài "Z" cũng được chấp nhận. Ví dụ: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" hoặc "2014-10-02T15:01:23+05:30".

Trường nhóm _created_time.

_created_time chỉ có thể là một trong những trạng thái sau:

createdTime

string (Timestamp format)

Thời gian tạo tệp.

Hãy dùng RFC 3339, trong đó dữ liệu đầu ra được tạo sẽ luôn được chuẩn hoá theo múi giờ và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các khoảng lệch khác ngoài "Z" cũng được chấp nhận. Ví dụ: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" hoặc "2014-10-02T15:01:23+05:30".

Trường nhóm _modified_time.

_modified_time chỉ có thể là một trong những trạng thái sau:

modifiedTime

string (Timestamp format)

Thời gian gần đây nhất mà tệp được sửa đổi.

Hãy dùng RFC 3339, trong đó dữ liệu đầu ra được tạo sẽ luôn được chuẩn hoá theo múi giờ và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các khoảng lệch khác ngoài "Z" cũng được chấp nhận. Ví dụ: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" hoặc "2014-10-02T15:01:23+05:30".

Trường nhóm _viewed_by_me_time.

_viewed_by_me_time chỉ có thể là một trong những trạng thái sau:

viewedByMeTime

string (Timestamp format)

Thời gian gần đây nhất mà người yêu cầu xem tệp.

Hãy dùng RFC 3339, trong đó dữ liệu đầu ra được tạo sẽ luôn được chuẩn hoá theo múi giờ và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các khoảng lệch khác ngoài "Z" cũng được chấp nhận. Ví dụ: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" hoặc "2014-10-02T15:01:23+05:30".

Trường nhóm _owner.

_owner chỉ có thể là một trong những trạng thái sau:

owner

string

Địa chỉ email của chủ sở hữu tệp.

Dấu thời gian

Biểu diễn dưới dạng JSON
{
  "seconds": string,
  "nanos": integer
}
Trường
seconds

string (int64 format)

Biểu thị số giây của thời gian UTC kể từ thời gian bắt đầu của hệ thống Unix 1970-01-01T00:00:00Z. Phải nằm trong khoảng từ -62135596800 đến 253402300799 (tương ứng với 0001-01-01T00:00:00Z đến 9999-12-31T23:59:59Z).

nanos

integer

Phân số không âm của một giây ở độ phân giải nano giây. Trường này là phần nano giây của khoảng thời gian, chứ không phải là một lựa chọn thay thế cho giây. Giá trị giây âm có phân số vẫn phải có giá trị nano giây không âm để đếm thời gian. Phải nằm trong khoảng từ 0 đến 999.999.999.

Chú giải công cụ

Gợi ý mang tính phá hoại: ❌ | Gợi ý mang tính luỹ đẳng: ✅ | Gợi ý chỉ đọc: ✅ | Gợi ý về thế giới mở: ❌