Ferramenta: search_threads
Lista as conversas por e-mail da conta do Gmail do usuário autenticado.
Essa ferramenta pode filtrar conversas com base em uma string de consulta e oferece suporte à paginação. Ela retorna uma lista de conversas, incluindo os IDs e as mensagens relacionadas. Cada mensagem relacionada contém detalhes como um trecho do corpo da mensagem, o assunto, o remetente, os destinatários etc. Os corpos completos das mensagens não são retornados por essa ferramenta. Use a ferramenta "get_thread" com um ID de conversa para buscar o corpo completo da mensagem, se necessário. As conversas com critérios excluídos ainda podem aparecer nos resultados. Isso acontece porque o Gmail identifica primeiro as mensagens correspondentes. Por exemplo, se você pesquisar -is:starred, o Gmail vai encontrar uma conversa inteira se ela tiver pelo menos uma mensagem sem estrela, mesmo que outros e-mails na mesma conversa tenham estrela.
O exemplo a seguir demonstra como usar curl para invocar a ferramenta MCP search_threads.
| Solicitação curl |
|---|
curl --location 'https://gmailmcp.googleapis.com/mcp/v1' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "search_threads", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Esquema de entrada
Mensagem de solicitação para a RPC SearchThreads.
SearchThreadsRequest
| Representação JSON |
|---|
{ "pageSize": integer "pageToken": string "query": string "includeTrash": boolean } |
| Campos | |
|---|---|
Campo de união
|
|
pageSize |
Opcional. O número máximo de conversas a serem retornadas. Se não for especificado, o padrão será 20. O valor máximo permitido é 50. |
Campo de união
|
|
pageToken |
Opcional. Token de página para recuperar uma página específica de resultados na lista. Deixe em branco para buscar a primeira página. Isso é usado principalmente para paginação, para continuar buscando resultados de onde a chamada |
Campo de união
|
|
query |
Opcional. Uma string de consulta para filtrar as conversas. As consultas em linguagem natural precisam ser convertidas previamente em consultas de sintaxe do Gmail para usar essa ferramenta. Se omitido, todas as conversas (exceto spam e lixeira por padrão) serão listadas. Operadores compatíveis por categoria: Remetente e destinatário: from: Hora e data: after:AAAA/MM/DD / newer:AAAA/MM/DD - Recebido após uma data. before:AAAA/MM/DD / older:AAAA/MM/DD - Recebido antes de uma data. older_than: Conteúdo: subject: Marcadores e categorias: label: Status: is: Tamanho: size: Lógica e agrupamento: AND - Corresponde a todos os critérios (comportamento padrão). OR ou { } - Corresponde a um ou mais critérios (por exemplo, from:amy OR from:david, {from:amy from:david}). - (menos) - Exclui critérios (por exemplo, -filme). ( ) - Agrupa vários termos de pesquisa (por exemplo, subject:(dinner film)). Exemplos: "subject:OneMCP Update" "from:user@example.com" "to:user2@example.com AND newer_than:7d" "project proposal has:attachment" "is:unread -in:draft" |
Campo de união
|
|
includeTrash |
Opcional. Inclui rascunhos da LIXEIRA nos resultados. O padrão é "falso". |
Esquema de saída
Mensagem de resposta para a RPC SearchThreads.
SearchThreadsResponse
| Representação JSON |
|---|
{
"threads": [
{
object ( |
| Campos | |
|---|---|
threads[] |
Lista de resumos de conversas. |
nextPageToken |
Um token que pode ser usado em uma chamada subsequente para recuperar a próxima página de conversas. Presente apenas se houver mais resultados. Se o número de conversas que correspondem à consulta exceder o limite de page_size, a resposta vai conter um |
Conversa
| Representação JSON |
|---|
{
"id": string,
"messages": [
{
object ( |
| Campos | |
|---|---|
id |
O identificador exclusivo da conversa. |
messages[] |
Uma lista de mensagens na conversa, ordenadas cronologicamente. |
Mensagem
| Representação JSON |
|---|
{ "id": string, "snippet": string, "subject": string, "sender": string, "toRecipients": [ string ], "ccRecipients": [ string ], "date": string, "plaintextBody": string, "attachmentIds": [ string ] } |
| Campos | |
|---|---|
id |
O identificador exclusivo da mensagem. |
snippet |
Snippet do corpo da mensagem. |
subject |
O assunto da mensagem extraído dos cabeçalhos: |
sender |
Endereço de e-mail do remetente. |
toRecipients[] |
Endereços de e-mail do destinatário. |
ccRecipients[] |
Endereços de e-mail do destinatário em Cc. |
date |
Data da mensagem no formato ISO 8601 (AAAA-MM-DD). |
plaintextBody |
Conteúdo completo do corpo, preenchido apenas se MessageFormat for FULL_CONTENT. |
attachmentIds[] |
Apenas saída. Os IDs de anexos, preenchidos apenas se MessageFormat for FULL_CONTENT. |
Anotações da ferramenta
Dica destrutiva: ❌ | Dica idempotente: ✅ | Dica somente leitura: ✅ | Dica de mundo aberto: ❌