Narzędzie: search_messages
Wyszukiwanie wiadomości w Google Chat za pomocą słów kluczowych i filtrów. Działa we wszystkich pokojach, do których użytkownik ma dostęp, lub może być ograniczony do konkretnej rozmowy.
Poniższy przykład pokazuje, jak za pomocą znaku curl wywołać narzędzie search_messages MCP.
| Żądanie 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 }' |
Schemat danych wejściowych
Prośba o wyszukanie wiadomości w Google Chat za pomocą słów kluczowych i filtrów. Działa we wszystkich pokojach, do których użytkownik ma dostęp, lub może być ograniczony do konkretnej rozmowy.
SearchMessagesRequest
| Zapis JSON |
|---|
{ "searchParameters": { object ( |
| Pola | |
|---|---|
searchParameters |
Wymagane. Parametry wyszukiwania, których chcesz użyć. |
orderBy |
Opcjonalnie. Określa kolejność, w jakiej mają być zwracane wyniki. Obsługiwane wartości: |
pageSize |
Opcjonalnie. Maksymalna liczba wyników do zwrócenia (maksymalnie 100). Jeśli nie podano tego argumentu, zwracanych jest maksymalnie 25 wyników. |
pageToken |
Opcjonalnie. Token strony otrzymany z poprzedniego wywołania |
SearchParameters
| Zapis JSON |
|---|
{ "keywords": [ string ], "conversationId": string, "sender": string, "isUnread": boolean, "hasLink": boolean, "startTime": string, "endTime": string, "mentionsMe": boolean, "conversationIncludesUser": string, "spaceDisplayNames": [ string ] } |
| Pola | |
|---|---|
keywords[] |
Opcjonalnie. Zestaw słów kluczowych, które służą do filtrowania wyników. |
conversationId |
Opcjonalnie. Ogranicza wyszukiwanie do konkretnego identyfikatora rozmowy zwróconego przez narzędzie search_conversations. Format: |
sender |
Opcjonalnie. Filtrowanie wiadomości od określonego użytkownika. Możesz użyć adresu e-mail lub nazwy zasobu nadawcy. Nazwy zasobów użytkownika mają format |
isUnread |
Opcjonalnie. Filtruj wiadomości, które nie zostały przeczytane przez użytkownika dzwoniącego. |
hasLink |
Opcjonalnie. Filtruj wiadomości zawierające co najmniej 1 adres URL. |
startTime |
Opcjonalnie. Filtruj wiadomości utworzone po tym czasie. Format: sygnatura czasowa ISO 8601. |
endTime |
Opcjonalnie. Filtruj wiadomości utworzone przed tym czasem. Format: sygnatura czasowa ISO 8601. |
mentionsMe |
Opcjonalnie. Filtruj wiadomości, w których jest wyraźnie wspomniany użytkownik, który wysłał zapytanie. |
conversationIncludesUser |
Opcjonalnie. Filtruj wiadomości na czatach i czatach grupowych, które zawierają adres e-mail lub identyfikator konkretnego użytkownika. |
spaceDisplayNames[] |
Opcjonalnie. Filtruj według listy nazw pokoi. Wyświetlane nazwy pokoi są dopasowywane częściowo. Uwaga: zwracanych jest tylko 5 najlepszych dopasowań. |
OrderBy
Określa kolejność, w jakiej mają być zwracane wyniki. Domyślnie używana jest wartość RELEVANCE_DESC, jeśli parametr is_unread nie ma wartości true. W przeciwnym razie używana jest wartość CREATE_TIME_DESC.
| Wartości w polu enum | |
|---|---|
ORDER_BY_UNSPECIFIED |
Wartość domyślna. |
CREATE_TIME_DESC |
Sortuj według czasu utworzenia w kolejności malejącej. |
RELEVANCE_DESC |
Sortuj według trafności w kolejności malejącej. |
Schemat wyjściowy
Odpowiedź na wyszukiwanie wiadomości w Google Chat. Jeśli pole next_page_token jest wypełnione, można ponownie wywołać funkcję SearchMessages z tym tokenem, aby pobrać następną stronę wyników.
SearchMessagesResponse
| Zapis JSON |
|---|
{
"messages": [
{
object ( |
| Pola | |
|---|---|
messages[] |
Lista obiektów wiadomości spełniających kryteria wyszukiwania, uporządkowana zgodnie z parametrem żądania |
nextPageToken |
Token, który można wysłać jako |
ChatMessage
| Zapis JSON |
|---|
{ "messageId": string, "threadId": string, "plaintextBody": string, "sender": { object ( |
| Pola | |
|---|---|
messageId |
Nazwa zasobu wiadomości. Format: |
threadId |
Wątek, do którego należy ta wiadomość. Jeśli wiadomość nie jest częścią wątku, to pole będzie puste. Format: spaces/{space}/threads/{thread} |
plaintextBody |
Treść wiadomości w formacie zwykłego tekstu. |
sender |
Nadawca wiadomości. |
createTime |
Tylko dane wyjściowe. Sygnatura czasowa utworzenia wiadomości. |
threadedReply |
Określa, czy wiadomość jest odpowiedzią w wątku. |
attachments[] |
Załączniki dołączone do wiadomości. |
reactionSummaries[] |
Podsumowanie reakcji emotikonami zawarte w wiadomości. |
Użytkownik
| Zapis JSON |
|---|
{
"userId": string,
"displayName": string,
"email": string,
"userType": enum ( |
| Pola | |
|---|---|
userId |
Nazwa zasobu użytkownika Google Chat. Format: |
displayName |
Wyświetlana nazwa użytkownika Google Chat. |
email |
Adres e-mail użytkownika. To pole jest wypełniane tylko wtedy, gdy typ użytkownika to HUMAN. |
userType |
Typ użytkownika. |
ChatAttachmentMetadata
| Zapis JSON |
|---|
{
"attachmentId": string,
"filename": string,
"mimeType": string,
"source": enum ( |
| Pola | |
|---|---|
attachmentId |
Nazwa zasobu załącznika. Format: spaces/{space}/messages/{message}/attachments/{attachment}. |
filename |
Nazwa załącznika. |
mimeType |
Typ treści (typ MIME). |
source |
Źródło załącznika. |
ReactionSummary
| Zapis JSON |
|---|
{ "emoji": string, "count": integer } |
| Pola | |
|---|---|
emoji |
Ciąg znaków Unicode emotikona lub nazwa niestandardowego emotikona. |
count |
Łączna liczba reakcji z użyciem powiązanego emotikona. |
UserType
Typ użytkownika Google Chat.
| Wartości w polu enum | |
|---|---|
USER_TYPE_UNSPECIFIED |
Nie określono. |
HUMAN |
Użytkownik. |
APP |
użytkownik aplikacji, |
Źródło
Źródło załącznika.
| Wartości w polu enum | |
|---|---|
SOURCE_UNSPECIFIED |
Zarezerwowano. |
DRIVE_FILE |
Plik pochodzi z Dysku Google. |
UPLOADED_CONTENT |
Plik zostanie przesłany do Google Chat. |
Adnotacje narzędzi
Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌