Narzędzie: search_conversations
Wyszukuje rozmowy w Google Chat według nazwy wyświetlanej.
Jeśli podasz tylko uczestników, to narzędzie znajdzie wiadomości bezpośrednie 1:1 (jeśli podasz jednego uczestnika) lub czaty grupowe (jeśli podasz wielu uczestników), które obejmują podanych uczestników i użytkownika dzwoniącego.
Jeśli podasz tylko zapytanie, to narzędzie wyszuka rozmowy, w których zapytanie jest podciągiem nazwy wyświetlanej rozmowy (bez uwzględniania wielkości liter).
Jeśli podasz zarówno uczestników, jak i zapytanie, to narzędzie znajdzie rozmowy z udziałem tych uczestników, a następnie odfiltruje je według wyświetlanej nazwy.
Jeśli nie podasz uczestników ani zapytania, to narzędzie wyświetli listę wszystkich rozmów, w których uczestniczy użytkownik wywołujący.
To narzędzie wyświetla tylko rozmowy, w których uczestniczy dany użytkownik.
WAŻNE: pusta lista „conversations” nie oznacza, że nie ma już żadnych wyników. Jeśli występuje parametr „next_page_token”, można pobrać więcej stron. Jeśli otrzymasz pustą listę, ale token „next_page_token”, zapytaj użytkownika, czy chcesz kontynuować wyszukiwanie.
Poniższy przykład pokazuje, jak za pomocą znaku curl wywołać narzędzie search_conversations MCP.
| Żądanie curl |
|---|
curl --location 'https://chatmcp.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "search_conversations", "arguments": { // provide these details according to the tool MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Schemat wejściowy
Komunikat żądania dla RPC FindConversations.
SearchConversationsRequest
| Zapis JSON |
|---|
{ "spaceNameQuery": string, "pageSize": integer, "pageToken": string, "participants": [ string ] } |
| Pola | |
|---|---|
spaceNameQuery |
Opcjonalnie. Tekst do wyszukania w nazwach wyświetlanych pokoi. |
pageSize |
Opcjonalnie. Maksymalna liczba miejsc do zwrócenia. Usługa może zwrócić mniej niż ta wartość. Jeśli nie podasz tej wartości, zwrócimy maksymalnie 100 przestrzeni. Maksymalna wartość to 1000. Wartości powyżej 1000 zostaną zmienione na 1000. |
pageToken |
Opcjonalnie. Token strony otrzymany z poprzedniego wywołania |
participants[] |
Opcjonalnie. Lista adresów e-mail uczestników, według których mają być filtrowane rozmowy (z wyłączeniem osoby dzwoniącej). |
Schemat wyjściowy
Wiadomość z odpowiedzią dla RPC FindConversations.
SearchConversationsResponse
| Zapis JSON |
|---|
{
"conversations": [
{
object ( |
| Pola | |
|---|---|
conversations[] |
Lista obiektów konwersacji, które spełniają kryteria wyszukiwania. |
nextPageToken |
Token, który można wysłać jako |
Rozmowa
| Zapis JSON |
|---|
{
"conversationId": string,
"displayName": string,
"conversationType": enum ( |
| Pola | |
|---|---|
conversationId |
Identyfikator rozmowy (np. „spaces/AAAAAAAAA”). |
displayName |
Wyświetlana nazwa rozmowy. |
conversationType |
Typ rozmowy (DIRECT_MESSAGE, GROUP_CHAT lub NAMED_SPACE). |
lastActiveTimestamp |
Ostatnia aktywność w konwersacji w formacie ISO 8601. Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: |
Sygnatura czasowa
| Zapis JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Pola | |
|---|---|
seconds |
Reprezentuje sekundy czasu UTC od epoki uniksowej 1970-01-01T00:00:00Z. Musi mieścić się w przedziale od -62135596800 do 253402300799 (włącznie), co odpowiada zakresowi od 0001-01-01T00:00:00Z do 9999-12-31T23:59:59Z. |
nanos |
Nieujemne ułamki sekundy w rozdzielczości nanosekundowej. To pole zawiera część czasu trwania w nanosekundach, a nie alternatywę dla sekund. Ujemne wartości sekund z ułamkami muszą mieć nieujemne wartości nanosekund, które liczą czas do przodu. Musi mieścić się w zakresie od 0 do 999 999 999 włącznie. |
Adnotacje narzędzi
Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌