MCP Tools Reference: chatmcp.googleapis.com

Tool: search_messages

Sucht mit Keywords und Filtern nach Google Chat-Nachrichten. Funktioniert in allen Gruppenbereichen, auf die der Nutzer Zugriff hat, oder kann auf eine bestimmte Unterhaltung beschränkt werden.

Im folgenden Beispiel wird gezeigt, wie Sie mit curl das MCP-Tool search_messages aufrufen.

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

Eingabeschema

Anfrage zum Suchen nach Google Chat-Nachrichten mithilfe von Keywords und Filtern Funktioniert in allen Gruppenbereichen, auf die der Nutzer Zugriff hat, oder kann auf eine bestimmte Unterhaltung beschränkt werden.

SearchMessagesRequest

JSON-Darstellung
{
  "searchParameters": {
    object (SearchParameters)
  },
  "orderBy": enum (OrderBy),
  "pageSize": integer,
  "pageToken": string
}
Felder
searchParameters

object (SearchParameters)

Erforderlich. Die für die Suche zu verwendenden Suchparameter.

orderBy

enum (OrderBy)

Optional. Gibt die Reihenfolge an, in der die Ergebnisse zurückgegeben werden sollen. Unterstützte Werte: CREATE_TIME_DESC, CREATE_TIME_ASC oder RELEVANCE_DESC. HINWEIS: RELEVANCE_DESC kann nicht verwendet werden, wenn der Filter „is_unread“ verwendet wird. Standardmäßig wird RELEVANCE_DESC verwendet, wenn is_unread nicht auf „true“ gesetzt ist. Andernfalls wird CREATE_TIME_DESC verwendet.

pageSize

integer

Optional. Die maximale Anzahl der zurückzugebenden Ergebnisse (maximal 100). Wenn nicht angegeben, werden maximal 25 zurückgegeben.

pageToken

string

Optional. Ein Seitentoken, das von einem vorherigen search_messages-Aufruf empfangen wurde. Geben Sie dieses an, um die nachfolgende Seite abzurufen.

SearchParameters

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

string

Optional. Eine Reihe von Keywords, mit denen die Ergebnisse gefiltert werden.

conversationId

string

Optional. Beschränkt die Suche auf eine bestimmte Unterhaltungs-ID, die vom Tool „search_conversations“ zurückgegeben wird. Format: spaces/{ID}.

sender

string

Optional. Nach Nachrichten von einem bestimmten Nutzer filtern Es kann entweder die E‑Mail-Adresse oder der Ressourcenname des Absenders verwendet werden. Nutzerressourcennamen werden als users/{ID} formatiert, wobei {ID} eine Personen-ID oder die E-Mail-Adresse sein kann.

isUnread

boolean

Optional. Nachrichten filtern, die vom anrufenden Nutzer nicht gelesen wurden.

hasLink

boolean

Optional. Nachrichten filtern, die mindestens eine URL enthalten.

startTime

string

Optional. Nachrichten filtern, die nach diesem Zeitpunkt erstellt wurden. Format: ISO 8601-Zeitstempel.

endTime

string

Optional. Nachrichten filtern, die vor diesem Zeitpunkt erstellt wurden. Format: ISO 8601-Zeitstempel.

mentionsMe

boolean

Optional. Filtern Sie nach Nachrichten, in denen der anrufende Nutzer explizit erwähnt wird.

conversationIncludesUser

string

Optional. Filtern Sie nach Nachrichten in Direktnachrichten und Gruppenchats, die die E-Mail-Adresse oder ID des jeweiligen Nutzers enthalten.

spaceDisplayNames[]

string

Optional. Nach einer Liste von Gruppenbereichsnamen filtern. Anzeigenamen von Gruppenbereichen werden teilweise abgeglichen. Hinweis: Es werden nur die fünf besten Übereinstimmungen zurückgegeben.

OrderBy

Gibt die Reihenfolge an, in der die Ergebnisse zurückgegeben werden sollen. Standardmäßig wird RELEVANCE_DESC verwendet, wenn „is_unread“ nicht auf „true“ gesetzt ist. Andernfalls wird CREATE_TIME_DESC verwendet.

Enums
ORDER_BY_UNSPECIFIED Standardwert.
CREATE_TIME_DESC Nach Erstellungszeit in absteigender Reihenfolge sortieren.
RELEVANCE_DESC Nach Relevanz in absteigender Reihenfolge sortieren.

Ausgabeschema

Antwort auf die Suche nach Google Chat-Nachrichten. Wenn „next_page_token“ ausgefüllt ist, kann „SearchMessages“ mit diesem Token noch einmal aufgerufen werden, um die nächste Ergebnisseite abzurufen.

SearchMessagesResponse

JSON-Darstellung
{
  "messages": [
    {
      object (ChatMessage)
    }
  ],
  "nextPageToken": string
}
Felder
messages[]

object (ChatMessage)

Liste der Nachrichtobjekte, die den Suchkriterien entsprechen, sortiert nach dem Anfrageparameter order_by.

nextPageToken

string

Ein Token, das als page_token gesendet werden kann, um die nächste Seite abzurufen. Wenn dieses Feld weggelassen wird, gibt es keine nachfolgenden Seiten.

ChatMessage

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

string

Ressourcenname der Nachricht. Format: spaces/{space}/messages/{message}

threadId

string

Der Thread, zu dem diese Nachricht gehört. Dieser Parameter ist leer, wenn die Nachricht nicht in einem Thread enthalten ist. Format: spaces/{space}/threads/{thread}

plaintextBody

string

Nur-Text-Textkörper der Nachricht.

sender

object (User)

Der Absender der Nachricht.

createTime

string

Nur Ausgabe. Zeitstempel für die Erstellung der Nachricht.

threadedReply

boolean

Gibt an, ob es sich bei der Nachricht um eine Thread-Antwort handelt.

attachments[]

object (ChatAttachmentMetadata)

In der Nachricht enthaltene Anhänge

reactionSummaries[]

object (ReactionSummary)

Die Zusammenfassung der Emoji-Reaktionen in der Nachricht.

Nutzer

JSON-Darstellung
{
  "userId": string,
  "displayName": string,
  "email": string,
  "userType": enum (UserType)
}
Felder
userId

string

Ressourcenname eines Chat-Nutzers. Format: users/{user}.

displayName

string

Der Anzeigename eines Chat-Nutzers.

email

string

Die E-Mail-Adresse des Nutzers. Dieses Feld wird nur ausgefüllt, wenn der Nutzertyp „HUMAN“ ist.

userType

enum (UserType)

Der Typ des Nutzers.

ChatAttachmentMetadata

JSON-Darstellung
{
  "attachmentId": string,
  "filename": string,
  "mimeType": string,
  "source": enum (Source)
}
Felder
attachmentId

string

Ressourcenname des Anhangs. Format: spaces/{space}/messages/{message}/attachments/{attachment}.

filename

string

Name des Anhangs.

mimeType

string

Inhaltstyp (MIME-Typ).

source

enum (Source)

Die Quelle des Anhangs.

ReactionSummary

JSON-Darstellung
{
  "emoji": string,
  "count": integer
}
Felder
emoji

string

Der Unicode-String des Emojis oder der Name des benutzerdefinierten Emojis.

count

integer

Die Gesamtzahl der Reaktionen mit dem zugehörigen Emoji.

UserType

Der Typ eines Google Chat-Nutzers.

Enums
USER_TYPE_UNSPECIFIED Nicht angegeben
HUMAN Menschlicher Nutzer.
APP App-Nutzer

Quelle

Die Quelle des Anhangs.

Enums
SOURCE_UNSPECIFIED Reserviert.
DRIVE_FILE Die Datei ist eine Google Drive-Datei.
UPLOADED_CONTENT Die Datei wird in Chat hochgeladen.

Tool-Annotationen

Destruktiver Hinweis: ❌ | Idempotenter Hinweis: ✅ | Nur-Lese-Hinweis: ✅ | Open-World-Hinweis: ❌