MCP Tools Reference: chatmcp.googleapis.com

Strumento: search_messages

Cerca messaggi di Google Chat utilizzando parole chiave e filtri. Funziona in tutti gli spazi a cui l'utente ha accesso o può essere limitato a una conversazione specifica.

Il seguente esempio mostra come utilizzare curl per richiamare lo strumento MCP search_messages.

Curl Request
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
}'
                

Schema di input

Richiedi di cercare messaggi di Google Chat utilizzando parole chiave e filtri. Funziona in tutti gli spazi a cui l'utente ha accesso o può essere limitato a una conversazione specifica.

SearchMessagesRequest

Rappresentazione JSON
{
  "searchParameters": {
    object (SearchParameters)
  },
  "orderBy": enum (OrderBy),
  "pageSize": integer,
  "pageToken": string
}
Campi
searchParameters

object (SearchParameters)

Obbligatorio. I parametri di ricerca da utilizzare per la ricerca.

orderBy

enum (OrderBy)

Facoltativo. Specifica l'ordine in cui devono essere restituiti i risultati. Valori supportati: CREATE_TIME_DESC, CREATE_TIME_ASC o RELEVANCE_DESC. NOTA: RELEVANCE_DESC non può essere utilizzato quando viene utilizzato il filtro is_unread. Per impostazione predefinita, viene utilizzato RELEVANCE_DESC se is_unread non è impostato su true, altrimenti viene utilizzato CREATE_TIME_DESC.

pageSize

integer

Facoltativo. Il numero massimo di risultati da restituire (fino a 100). Se non specificato, vengono restituiti al massimo 25 risultati.

pageToken

string

Facoltativo. Un token di pagina, ricevuto da una precedente chiamata search_messages. Forniscilo per recuperare la pagina successiva.

SearchParameters

Rappresentazione JSON
{
  "keywords": [
    string
  ],
  "conversationId": string,
  "sender": string,
  "isUnread": boolean,
  "hasLink": boolean,
  "startTime": string,
  "endTime": string,
  "mentionsMe": boolean,
  "conversationIncludesUser": string,
  "spaceDisplayNames": [
    string
  ]
}
Campi
keywords[]

string

Facoltativo. Un insieme di parole chiave utilizzate per filtrare i risultati.

conversationId

string

Facoltativo. Limita la ricerca a un identificatore di conversazione specifico, restituito dallo strumento search_conversations. Formato: spaces/{ID}.

sender

string

Facoltativo. Filtra i messaggi di un utente specifico. Puoi utilizzare l'email o il nome della risorsa del mittente. I nomi delle risorse utente sono formattati come users/{ID}, dove {ID} può essere un ID persona o il suo indirizzo email.

isUnread

boolean

Facoltativo. Filtra i messaggi che non sono stati letti dall'utente chiamante.

hasLink

boolean

Facoltativo. Filtra i messaggi contenenti almeno un URL.

startTime

string

Facoltativo. Filtra i messaggi creati dopo questo orario. Formato: timestamp ISO 8601.

endTime

string

Facoltativo. Filtra i messaggi creati prima di questo orario. Formato: timestamp ISO 8601.

mentionsMe

boolean

Facoltativo. Filtra i messaggi che menzionano esplicitamente l'utente che chiama.

conversationIncludesUser

string

Facoltativo. Filtra i messaggi nei messaggi diretti e nelle chat di gruppo che includono l'email o l'ID utente specifico.

spaceDisplayNames[]

string

Facoltativo. Filtra in base a un elenco di nomi di spazi; i nomi visualizzati degli spazi vengono abbinati parzialmente. Nota: vengono restituite solo le prime 5 corrispondenze.

OrderBy

Specifica l'ordine in cui devono essere restituiti i risultati. Per impostazione predefinita, viene utilizzato RELEVANCE_DESC se is_unread non è impostato su true, altrimenti viene utilizzato CREATE_TIME_DESC.

Enum
ORDER_BY_UNSPECIFIED Valore predefinito.
CREATE_TIME_DESC Ordina per data di creazione in ordine decrescente.
RELEVANCE_DESC Ordina per pertinenza in ordine decrescente.

Schema di output

Risposta alla ricerca di messaggi di Google Chat. Se next_page_token è compilato, SearchMessages può essere chiamato di nuovo con quel token per recuperare la pagina successiva dei risultati.

SearchMessagesResponse

Rappresentazione JSON
{
  "messages": [
    {
      object (ChatMessage)
    }
  ],
  "nextPageToken": string
}
Campi
messages[]

object (ChatMessage)

Elenco degli oggetti messaggio che corrispondono ai criteri di ricerca, ordinati in base al parametro di richiesta order_by.

nextPageToken

string

Un token che può essere inviato come page_token per recuperare la pagina successiva. Se questo campo viene omesso, non verranno visualizzate altre pagine.

ChatMessage

Rappresentazione JSON
{
  "messageId": string,
  "threadId": string,
  "plaintextBody": string,
  "sender": {
    object (User)
  },
  "createTime": string,
  "threadedReply": boolean,
  "attachments": [
    {
      object (ChatAttachmentMetadata)
    }
  ],
  "reactionSummaries": [
    {
      object (ReactionSummary)
    }
  ]
}
Campi
messageId

string

Nome della risorsa del messaggio. Formato: spaces/{space}/messages/{message}

threadId

string

Il thread a cui appartiene questo messaggio. Questo campo sarà vuoto se il messaggio non è in thread. Formato: spaces/{space}/threads/{thread}

plaintextBody

string

Corpo del messaggio in testo normale.

sender

object (User)

Il mittente del messaggio.

createTime

string

Solo output. Timestamp di creazione del messaggio.

threadedReply

boolean

Indica se il messaggio è una risposta a un thread.

attachments[]

object (ChatAttachmentMetadata)

Allegati inclusi nel messaggio.

reactionSummaries[]

object (ReactionSummary)

Il riepilogo delle reazioni con emoji incluso nel messaggio.

Utente

Rappresentazione JSON
{
  "userId": string,
  "displayName": string,
  "email": string,
  "userType": enum (UserType)
}
Campi
userId

string

Nome risorsa di un utente di Chat. Formato: users/{user}.

displayName

string

Il nome visualizzato di un utente di Chat.

email

string

L'indirizzo email dell'utente. Questo campo viene compilato solo quando il tipo di utente è HUMAN.

userType

enum (UserType)

Il tipo di utente.

ChatAttachmentMetadata

Rappresentazione JSON
{
  "attachmentId": string,
  "filename": string,
  "mimeType": string,
  "source": enum (Source)
}
Campi
attachmentId

string

Nome della risorsa dell'allegato. Formato: spaces/{space}/messages/{message}/attachments/{attachment}.

filename

string

Nome dell'allegato.

mimeType

string

Tipo di contenuti (tipo MIME).

source

enum (Source)

L'origine dell'allegato.

ReactionSummary

Rappresentazione JSON
{
  "emoji": string,
  "count": integer
}
Campi
emoji

string

La stringa Unicode dell'emoji o il nome dell'emoji personalizzata.

count

integer

Il numero totale di reazioni che utilizzano l'emoji associata.

UserType

Il tipo di utente di Google Chat.

Enum
USER_TYPE_UNSPECIFIED Non specificato.
HUMAN Utente umano.
APP Utente dell'app.

Origine

L'origine dell'allegato.

Enum
SOURCE_UNSPECIFIED Riservato.
DRIVE_FILE Il file è un file di Google Drive.
UPLOADED_CONTENT Il file viene caricato su Chat.

Annotazioni dello strumento

Suggerimento distruttivo: ❌ | Suggerimento idempotente: ✅ | Suggerimento di sola lettura: ✅ | Suggerimento open world: ❌