Ferramenta: search_messages
Pesquisa mensagens do Google Chat usando palavras-chave e filtros. Funciona em todos os espaços a que o usuário tem acesso ou pode ser limitado a uma conversa específica.
O exemplo a seguir demonstra como usar curl para invocar a ferramenta search_messages MCP.
| Solicitação 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 }' |
Esquema de entrada
Solicitação para pesquisar mensagens do Google Chat usando palavras-chave e filtros. Funciona em todos os espaços a que o usuário tem acesso ou pode ser limitado a uma conversa específica.
SearchMessagesRequest
| Representação JSON |
|---|
{ "searchParameters": { object ( |
| Campos | |
|---|---|
searchParameters |
Obrigatório. Os parâmetros de pesquisa a serem usados. |
orderBy |
Opcional. Especifica a ordem em que os resultados devem ser retornados. Valores aceitos: |
pageSize |
Opcional. O número máximo de resultados a serem retornados (até 100). Se não for especificado, no máximo 25 serão retornados. |
pageToken |
Opcional. Um token de página recebido de uma chamada |
SearchParameters
| Representação JSON |
|---|
{ "keywords": [ string ], "conversationId": string, "sender": string, "isUnread": boolean, "hasLink": boolean, "startTime": string, "endTime": string, "mentionsMe": boolean, "conversationIncludesUser": string, "spaceDisplayNames": [ string ] } |
| Campos | |
|---|---|
keywords[] |
Opcional. Um conjunto de palavras-chave usadas para filtrar os resultados. |
conversationId |
Opcional. Limita a pesquisa a um identificador de conversa específico, conforme retornado pela ferramenta search_conversations. Formato: |
sender |
Opcional. Filtre mensagens de um usuário específico. É possível usar o e-mail ou o nome do recurso do remetente. Os nomes de recursos de usuário são formatados como |
isUnread |
Opcional. Filtra mensagens que não foram lidas pelo usuário que fez a chamada. |
hasLink |
Opcional. Filtra mensagens que contêm pelo menos um URL. |
startTime |
Opcional. Filtra mensagens criadas depois desse horário. Formato: carimbo de data/hora ISO 8601. |
endTime |
Opcional. Filtra mensagens criadas antes desse horário. Formato: carimbo de data/hora ISO 8601. |
mentionsMe |
Opcional. Filtra mensagens que mencionam explicitamente o usuário que fez a chamada. |
conversationIncludesUser |
Opcional. Filtre mensagens em MDs e chats em grupo que incluem o e-mail ou ID do usuário específico. |
spaceDisplayNames[] |
Opcional. Filtre por uma lista de nomes de espaços. Os nomes de exibição dos espaços são parcialmente correspondentes. Observação: apenas as cinco principais correspondências são retornadas. |
OrderBy
Especifica a ordem em que os resultados devem ser retornados. Por padrão, RELEVANCE_DESC é usado se is_unread não estiver definido como "true". Caso contrário, CREATE_TIME_DESC será usado.
| Tipos enumerados | |
|---|---|
ORDER_BY_UNSPECIFIED |
Valor padrão. |
CREATE_TIME_DESC |
Ordenar por horário de criação em ordem decrescente. |
RELEVANCE_DESC |
Ordenar por relevância em ordem decrescente. |
Esquema de saída
Resposta à pesquisa de mensagens do Google Chat. Se "next_page_token" estiver preenchido, a chamada "SearchMessages" poderá ser feita novamente com esse token para recuperar a próxima página de resultados.
SearchMessagesResponse
| Representação JSON |
|---|
{
"messages": [
{
object ( |
| Campos | |
|---|---|
messages[] |
Lista de objetos de mensagem que correspondem aos critérios de pesquisa, ordenados de acordo com o parâmetro de solicitação |
nextPageToken |
Um token que pode ser enviado como |
ChatMessage
| Representação JSON |
|---|
{ "messageId": string, "threadId": string, "plaintextBody": string, "sender": { object ( |
| Campos | |
|---|---|
messageId |
Nome do recurso da mensagem. Formato: |
threadId |
A conversa a que esta mensagem pertence. Esse campo fica vazio se a mensagem não estiver em uma conversa. Formato: spaces/{space}/threads/{thread} |
plaintextBody |
Corpo de texto simples da mensagem. |
sender |
O remetente da mensagem. |
createTime |
Apenas saída. Carimbo de data/hora em que a mensagem foi criada. |
threadedReply |
Indica se a mensagem é uma resposta em uma conversa. |
attachments[] |
Anexos incluídos na mensagem. |
reactionSummaries[] |
O resumo das reações com emojis incluído na mensagem. |
Usuário
| Representação JSON |
|---|
{
"userId": string,
"displayName": string,
"email": string,
"userType": enum ( |
| Campos | |
|---|---|
userId |
Nome do recurso de um usuário do Chat. Formato: |
displayName |
O nome de exibição de um usuário do Chat. |
email |
O endereço de e-mail do usuário. Esse campo só é preenchido quando o tipo de usuário é "HUMAN". |
userType |
O tipo de usuário. |
ChatAttachmentMetadata
| Representação JSON |
|---|
{
"attachmentId": string,
"filename": string,
"mimeType": string,
"source": enum ( |
| Campos | |
|---|---|
attachmentId |
Nome do recurso do anexo. Formato: spaces/{space}/messages/{message}/attachments/{attachment}. |
filename |
Nome do anexo. |
mimeType |
Tipo de conteúdo (tipo MIME). |
source |
A origem do anexo. |
ReactionSummary
| Representação JSON |
|---|
{ "emoji": string, "count": integer } |
| Campos | |
|---|---|
emoji |
A string Unicode do emoji ou o nome do emoji personalizado. |
count |
O número total de reações usando o emoji associado. |
UserType
O tipo de usuário do Google Chat.
| Tipos enumerados | |
|---|---|
USER_TYPE_UNSPECIFIED |
Não especificado. |
HUMAN |
Usuário humano. |
APP |
Usuário do app. |
Origem
A origem do anexo.
| Tipos enumerados | |
|---|---|
SOURCE_UNSPECIFIED |
Reservado. |
DRIVE_FILE |
O arquivo é do Google Drive. |
UPLOADED_CONTENT |
O arquivo é enviado para o Chat. |
Anotações de ferramentas
Dica destrutiva: ❌ | Dica idempotente: ✅ | Dica somente leitura: ✅ | Dica de mundo aberto: ❌