Tool: search_conversations
Sucht nach Google Chat-Unterhaltungen (benannte Gruppenbereiche, Direktnachrichten (DMs) oder Gruppenchats) anhand des Anzeigenamens oder der Teilnehmer, um Unterhaltungs-IDs zu finden.
Mit diesem Tool werden Metadaten von Unterhaltungen durchsucht, NICHT Nachrichteninhalte. Wenn Sie im Nachrichtenverlauf suchen oder Nachrichten nach Keyword, Absender oder Zeitstempel finden möchten, verwenden Sie search_messages.
Wenn nur participants angegeben sind, sucht dieses Tool nach 1:1-Direktnachrichten (wenn ein Teilnehmer angegeben ist) oder Gruppenchats (wenn mehrere Teilnehmer angegeben sind), die die angegebenen Teilnehmer und den aufrufenden Nutzer enthalten.
Wenn nur ein query angegeben wird, sucht dieses Tool nach Unterhaltungen, bei denen die Abfrage ein Teilstring des Anzeigenamens der Unterhaltung ist, wobei die Groß-/Kleinschreibung nicht berücksichtigt wird.
Wenn sowohl participants als auch query angegeben sind, sucht dieses Tool nach Unterhaltungen nach Teilnehmern und filtert sie dann nach Anzeigename.
Wenn weder participants noch query angegeben ist, listet dieses Tool alle Unterhaltungen auf, in denen der aufrufende Nutzer Mitglied ist.
Dieses Tool listet nur Unterhaltungen auf, an denen der aufrufende Nutzer beteiligt ist.
Gibt eine Liste von Konversationsobjekten mit Konversations-IDs (Format: spaces/{space}), Anzeigenamen und Konversationstypen zurück.
WICHTIG: Eine leere conversations-Liste bedeutet nicht, dass es insgesamt keine weiteren Ergebnisse gibt. Wenn next_page_token vorhanden ist, können weitere Seiten abgerufen werden. Wenn du eine leere Liste, aber einen next_page_token erhältst, frage den Nutzer, ob du die Suche fortsetzen sollst.
Das folgende Codebeispiel zeigt, wie Sie mit curl das MCP-Tool search_conversations aufrufen.
| Curl-Anfrage |
|---|
curl --location 'https://chatmcp.googleapis.com/mcp/v1' \ --header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \ --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 MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
Eingabeschema
SearchConversationsRequest
| JSON-Darstellung |
|---|
{ "spaceNameQuery": string, "pageSize": integer, "pageToken": string, "participants": [ string ] } |
| Felder | |
|---|---|
spaceNameQuery |
Optional. Der Text, nach dem in den Anzeigenamen der Spaces gesucht werden soll (Teilstringübereinstimmung ohne Berücksichtigung der Groß-/Kleinschreibung). |
pageSize |
Optional. Die maximale Anzahl der zurückzugebenden Spaces. Der Dienst gibt möglicherweise weniger als diesen Wert zurück. Wenn nicht angegeben, werden maximal 20 Spaces zurückgegeben. Der Höchstwert beträgt 1.000. Werte über 1.000 werden implizit auf 1.000 umgewandelt. |
pageToken |
Optional. Ein Seitentoken, das von einem vorherigen |
participants[] |
Optional. Liste der E‑Mail-Adressen der Teilnehmer, nach denen die Unterhaltungen gefiltert werden sollen, mit Ausnahme des Anrufers. |
Ausgabeschema
Antwort mit der Liste der übereinstimmenden Unterhaltungen.
SearchConversationsResponse
| JSON-Darstellung |
|---|
{
"conversations": [
{
object ( |
| Felder | |
|---|---|
conversations[] |
Liste der Konversationsobjekte, die den Suchkriterien entsprechen. Jede Unterhaltung enthält die conversation_id (Format: spaces/{space}), den display_name, den conversation_type und den last_active_timestamp. |
nextPageToken |
Ein Token, das als Wird nur ausgefüllt, wenn die Anfrage nach |
Unterhaltung
| JSON-Darstellung |
|---|
{
"conversationId": string,
"displayName": string,
"conversationType": enum ( |
| Felder | |
|---|---|
conversationId |
Die ID der Unterhaltung (z.B. „spaces/AAAAAAAAA“). |
displayName |
Der Anzeigename der Unterhaltung. Bei benannten Gruppenbereichen ist dies der Name des Gruppenbereichs. Bei Direktnachrichten (1:1) ist dies der Name des anderen Teilnehmers. Bei unbenannten Gruppenchats ist dies ein generierter Name, der auf den Namen der Mitglieder basiert. |
conversationType |
Die Art der Unterhaltung (DIRECT_MESSAGE, GROUP_CHAT oder NAMED_SPACE). |
lastActiveTimestamp |
Der Zeitpunkt der letzten Aktivität in der Unterhaltung im ISO 8601-Format. Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: |
Zeitstempel
| JSON-Darstellung |
|---|
{ "seconds": string, "nanos": integer } |
| Felder | |
|---|---|
seconds |
Stellt Sekunden der UTC-Zeit seit Unix-Epoche 1970-01-01T00:00:00Z dar. Muss zwischen -62135596800 und 253402300799 (einschließlich) liegen (entspricht 0001-01-01T00:00:00Z bis 9999-12-31T23:59:59Z). |
nanos |
Nicht negative Sekundenbruchteile Nanosekunden-Auflösung. Dieses Feld ist der Nanosekunden-Teil der Dauer, keine Alternative zu Sekunden. Negative Sekundenwerte mit Bruchteilen müssen weiterhin nicht negative Nano-Werte haben, die zeitlich vorwärts gezählt werden. Muss zwischen 0 und 999.999.999 (einschließlich) liegen. |
ConversationType
Definiert den Typ der Unterhaltung.
| Enums | |
|---|---|
CONVERSATION_TYPE_UNSPECIFIED |
Nicht angegeben |
NAMED_SPACE |
Ein benannter Gruppenbereich. |
GROUP_CHAT |
Ein Gruppenchat mit mindestens drei Personen. |
DIRECT_MESSAGE |
Eine Direktnachricht zwischen zwei Personen oder einer Person und einer Chat-App. |
Tool-Annotationen
Tool-Anmerkungen werden an MCP-Clients gesendet, um das grundlegende Risiko eines bestimmten Tools zu beschreiben. Die meisten Clients behandeln diese Hinweise als nicht vertrauenswürdig, sie können aber verwendet werden, um zu entscheiden, wann eine Bestätigungsaufforderung an einen Nutzer gesendet werden soll.
Zusätzlich zum Titelstring werden die folgenden booleschen Hinweise definiert:
readOnlyHint: Wenn „true“, ändert das Tool seine Umgebung nicht. Standardeinstellung: false.destructiveHint: Wenn „true“, kann das Tool destruktive Aktionen ausführen. Wenn „false“, kann das Tool nur additive Aktionen ausführen. Standardeinstellung: true.idempotentHint: Wenn „true“, hat das wiederholte Aufrufen des Tools mit denselben Argumenten keine zusätzlichen Auswirkungen auf die Umgebung. Standardeinstellung: false.openWorldHint: Wenn „true“, kann das Tool mit einer „offenen Welt“ externer Entitäten interagieren. Wenn „false“, kann das Tool nur mit internen Entitäten interagieren. Ein Tool für die Websuche wäre beispielsweise ein Open-World-Tool, ein Tool für gemerkte Informationen dagegen nicht.
Destruktiver Hinweis: ❌ | Idempotenter Hinweis: ✅ | Lesezugriff-Hinweis: ✅ | Open-World-Hinweis: ❌
Autorisierungsbereiche
Erfordert einen der folgenden OAuth-Bereiche:
https://www.googleapis.com/auth/chat.memberships.readonlyhttps://www.googleapis.com/auth/chat.spaceshttps://www.googleapis.com/auth/chat.spaces.readonly