MCP Tools Reference: chatmcp.googleapis.com

Công cụ: search_messages

Tìm kiếm tin nhắn trong Google Chat bằng từ khoá và bộ lọc. Hoạt động trên tất cả các không gian mà người dùng có quyền truy cập hoặc có thể được giới hạn trong một cuộc trò chuyện cụ thể.

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

Yêu cầu Curl
curl --location 'https://chatmcp.googleapis.com/mcp/v1' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "search_messages",
    "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 tin nhắn trong Google Chat bằng từ khoá và bộ lọc. Hoạt động trên tất cả các không gian mà người dùng có quyền truy cập hoặc có thể được giới hạn trong một cuộc trò chuyện cụ thể.

SearchMessagesRequest

Biểu diễn dưới dạng JSON
{
  "searchParameters": {
    object (SearchParameters)
  },
  "orderBy": enum (OrderBy),
  "pageSize": integer,
  "pageToken": string
}
Trường
searchParameters

object (SearchParameters)

Bắt buộc. Các tham số tìm kiếm cần dùng cho hoạt động tìm kiếm.

orderBy

enum (OrderBy)

Không bắt buộc. Chỉ định thứ tự trả về kết quả. Các giá trị được hỗ trợ: CREATE_TIME_DESC, CREATE_TIME_ASC hoặc RELEVANCE_DESC. LƯU Ý: Bạn không thể dùng RELEVANCE_DESC khi sử dụng bộ lọc is_unread. Theo mặc định, RELEVANCE_DESC sẽ được dùng nếu is_unread không được đặt thành true, nếu không thì CREATE_TIME_DESC sẽ được dùng.

pageSize

integer

Không bắt buộc. Số lượng kết quả tối đa cần trả về (tối đa 100). Nếu không chỉ định, tối đa 25 kết quả sẽ được trả về.

pageToken

string

Không bắt buộc. Mã thông báo trang nhận được từ một lệnh gọi search_messages trước đó. Cung cấp thông tin này để truy xuất trang tiếp theo.

SearchParameters

Biểu diễn dưới dạng JSON
{
  "keywords": [
    string
  ],
  "conversationId": string,
  "sender": string,
  "isUnread": boolean,
  "hasLink": boolean,
  "startTime": string,
  "endTime": string,
  "mentionsMe": boolean,
  "conversationIncludesUser": string,
  "spaceDisplayNames": [
    string
  ]
}
Trường
keywords[]

string

Không bắt buộc. Một tập hợp các từ khoá được dùng để lọc kết quả.

conversationId

string

Không bắt buộc. Giới hạn phạm vi tìm kiếm trong một mã nhận dạng cuộc trò chuyện cụ thể, như được trả về từ công cụ search_conversations. Định dạng: spaces/{ID}.

sender

string

Không bắt buộc. Lọc thư của một người dùng cụ thể. Bạn có thể sử dụng địa chỉ email hoặc tên tài nguyên của người gửi. Tên tài nguyên người dùng có định dạng là users/{ID}, trong đó {ID} có thể là mã nhận dạng cá nhân hoặc địa chỉ email của người dùng.

isUnread

boolean

Không bắt buộc. Lọc những tin nhắn mà người dùng gọi chưa đọc.

hasLink

boolean

Không bắt buộc. Lọc những thư chứa ít nhất một URL.

startTime

string

Không bắt buộc. Lọc những thư được tạo sau thời gian này. Định dạng: Dấu thời gian ISO 8601.

endTime

string

Không bắt buộc. Bộ lọc cho những tin nhắn được tạo trước thời gian này. Định dạng: Dấu thời gian ISO 8601.

mentionsMe

boolean

Không bắt buộc. Lọc những tin nhắn đề cập rõ ràng đến người dùng gọi.

conversationIncludesUser

string

Không bắt buộc. Lọc những tin nhắn trong tin nhắn trực tiếp và cuộc trò chuyện nhóm có chứa email hoặc mã nhận dạng người dùng cụ thể.

spaceDisplayNames[]

string

Không bắt buộc. Lọc theo danh sách tên không gian; tên hiển thị của không gian được so khớp một phần. Lưu ý: Chỉ 5 kết quả trùng khớp hàng đầu được trả về.

OrderBy

Chỉ định thứ tự trả về kết quả. Theo mặc định, RELEVANCE_DESC sẽ được dùng nếu is_unread không được đặt thành true, nếu không thì CREATE_TIME_DESC sẽ được dùng.

Enum
ORDER_BY_UNSPECIFIED Giá trị mặc định.
CREATE_TIME_DESC Sắp xếp theo thời gian tạo theo thứ tự giảm dần.
RELEVANCE_DESC Sắp xếp theo mức độ liên quan theo thứ tự giảm dần.

Giản đồ đầu ra

Phản hồi yêu cầu tìm kiếm tin nhắn trên Google Chat. Nếu next_page_token được điền sẵn, bạn có thể gọi lại SearchMessages bằng mã thông báo đó để truy xuất trang kết quả tiếp theo.

SearchMessagesResponse

Biểu diễn dưới dạng JSON
{
  "messages": [
    {
      object (ChatMessage)
    }
  ],
  "nextPageToken": string
}
Trường
messages[]

object (ChatMessage)

Danh sách các đối tượng tin nhắn phù hợp với tiêu chí tìm kiếm, được sắp xếp theo tham số yêu cầu order_by.

nextPageToken

string

Một mã thông báo có thể được gửi dưới dạng page_token để truy xuất trang tiếp theo. Nếu bạn bỏ qua trường này, thì sẽ không có trang tiếp theo.

ChatMessage

Biểu diễn dưới dạng JSON
{
  "messageId": string,
  "threadId": string,
  "plaintextBody": string,
  "sender": {
    object (User)
  },
  "createTime": string,
  "threadedReply": boolean,
  "attachments": [
    {
      object (ChatAttachmentMetadata)
    }
  ],
  "reactionSummaries": [
    {
      object (ReactionSummary)
    }
  ]
}
Trường
messageId

string

Tên tài nguyên của thông báo. Định dạng spaces/{space}/messages/{message}

threadId

string

Chuỗi thư mà thư này thuộc về. Khoá này sẽ trống nếu tin nhắn không được phân luồng. Định dạng: spaces/{space}/threads/{thread}

plaintextBody

string

Nội dung văn bản thuần tuý của thư.

sender

object (User)

Người gửi tin nhắn.

createTime

string

Chỉ có đầu ra. Dấu thời gian cho biết thời điểm tạo thông báo.

threadedReply

boolean

Tin nhắn có phải là tin nhắn trả lời trong một chuỗi hay không.

attachments[]

object (ChatAttachmentMetadata)

Tệp đính kèm có trong thư.

reactionSummaries[]

object (ReactionSummary)

Bản tóm tắt về các lượt thể hiện cảm xúc bằng biểu tượng trong thư.

Người dùng

Biểu diễn dưới dạng JSON
{
  "userId": string,
  "displayName": string,
  "email": string,
  "userType": enum (UserType)
}
Trường
userId

string

Tên tài nguyên của một người dùng Chat. Định dạng: users/{user}.

displayName

string

Tên hiển thị của người dùng Chat.

email

string

Địa chỉ email của người dùng. Trường này chỉ được điền sẵn khi loại người dùng là HUMAN.

userType

enum (UserType)

Loại người dùng.

ChatAttachmentMetadata

Biểu diễn dưới dạng JSON
{
  "attachmentId": string,
  "filename": string,
  "mimeType": string,
  "source": enum (Source)
}
Trường
attachmentId

string

Tên tài nguyên của tệp đính kèm. Định dạng: spaces/{space}/messages/{message}/attachments/{attachment}.

filename

string

Tên của tệp đính kèm.

mimeType

string

Loại nội dung (loại MIME).

source

enum (Source)

Nguồn của tệp đính kèm.

ReactionSummary

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

string

Chuỗi unicode biểu tượng cảm xúc hoặc tên biểu tượng cảm xúc tuỳ chỉnh.

count

integer

Tổng số lượt thể hiện cảm xúc bằng biểu tượng cảm xúc liên quan.

UserType

Loại người dùng Google Chat.

Enum
USER_TYPE_UNSPECIFIED Không xác định.
HUMAN Người dùng thực.
APP Người dùng ứng dụng.

Nguồn

Nguồn của tệp đính kèm.

Enum
SOURCE_UNSPECIFIED Đã đặt trước.
DRIVE_FILE Tệp này là tệp trên Google Drive.
UPLOADED_CONTENT Tệp sẽ được tải lên Chat.

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ở: ❌