MCP Tools Reference: chatmcp.googleapis.com

Tool: list_messages

Ruft Nachrichten aus einer angegebenen Google Chat-Unterhaltung (Gruppenbereich, Direktnachricht (DM) oder Gruppen-DM) im Markdown-Format ab. Ermöglicht das Filtern nach Thread, Zeitraum und Anzahl der Nachrichten. Außerdem kann die nächste Seite mit Nachrichten abgerufen werden, um mehr Kontext zu erhalten. Private Nachrichten (Nachrichten, die nur für einen einzelnen Nutzer sichtbar sind) werden herausgefiltert.

Das folgende Codebeispiel zeigt, wie Sie mit curl das MCP-Tool list_messages 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": "list_messages",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Eingabeschema

ListChatMessagesRequest

JSON-Darstellung
{
  "conversationId": string,
  "threadId": string,
  "pageSize": integer,
  "pageToken": string,
  "startTime": string,
  "endTime": string
}
Felder
conversationId

string

Erforderlich. Die ID der Unterhaltung. Eine Unterhaltung kann ein Gruppenbereich, eine Direktnachricht (DM) oder eine Gruppen-DM/ein Gruppenchat sein. Format: spaces/{space}

threadId

string

Optional. Die ID eines bestimmten Threads in der Unterhaltung. Wenn angegeben, werden nur Nachrichten aus diesem Thread zurückgegeben. Wenn keine Angabe erfolgt, werden Nachrichten aus allen Threads in der Unterhaltung berücksichtigt. Format: spaces/{space}/threads/{thread}

pageSize

integer

Optional. Die maximale Anzahl der zurückzugebenden Nachrichten. Der Dienst gibt möglicherweise weniger als diesen Wert zurück. Wenn nichts anderes angegeben wird, wird der Wert standardmäßig auf 20 gesetzt. Der Höchstwert ist 50. Wenn Sie einen Wert über 50 verwenden, wird er automatisch in 50 geändert.

pageToken

string

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

startTime

string

Optional. ISO 8601-Zeitstempel zum Filtern von Nachrichten. Es werden nur Nachrichten zurückgegeben, die nach diesem Zeitpunkt erstellt wurden.

endTime

string

Optional. ISO 8601-Zeitstempel zum Filtern von Nachrichten. Es werden nur Nachrichten zurückgegeben, die vor diesem Zeitpunkt erstellt wurden.

Ausgabeschema

Antwort, die die Liste der Nachrichten aus der angeforderten Unterhaltung enthält.

ListChatMessagesResponse

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

object (ChatMessage)

Liste der abgerufenen Nachrichten in umgekehrter chronologischer Reihenfolge (neueste zuerst).

nextPageToken

string

Ein Token, das als page_token in einer nachfolgenden ListMessagesRequest gesendet werden kann, um die nächste Seite mit Nachrichten abzurufen. Wenn dieses Feld leer ist, gibt es keine weiteren Seiten.

ChatMessage

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

string

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

threadId

string

Der Thread, zu dem diese Nachricht gehört. Dieses Feld ist leer, wenn die Nachricht nicht Teil eines Threads ist. Format: spaces/{space}/threads/{thread}

plaintextBody

string

Textkörper der Nachricht im Markdown-Format.

sender

object (User)

Der Absender der Nachricht.

createTime

string

Nur Ausgabe. Zeitstempel für die Erstellung der Nachricht. Format: ISO 8601-Zeitstempel.

threadedReply

boolean

Gibt an, ob die Nachricht eine Antwort in einem Thread ist.

attachments[]

object (ChatAttachmentMetadata)

Anhänge, die in der Nachricht enthalten sind.

reactionSummaries[]

object (ReactionSummary)

Die Zusammenfassung der Emoji-Reaktionen, die in der Nachricht enthalten ist.

quotedMessageMetadata

object (QuotedMessageMetadata)

Nur Ausgabe. Informationen zu einer ursprünglichen Nachricht, die in dieser Nachricht zitiert oder weitergeleitet wird. Hinweis: Dieses Feld befindet sich noch in der Entwicklung und ist möglicherweise noch nicht in allen Umgebungen vorhanden.

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),
  "driveFileId": string
}
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.

driveFileId

string

Nur Ausgabe. Die ID der Google Drive-Datei. Wird nur ausgefüllt, wenn die Quelle DRIVE_FILE ist. Verwendung mit dem Google Drive-MCP.

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.

QuotedMessageMetadata

JSON-Darstellung
{
  "messageId": string,
  "lastUpdateTime": string,
  "quoteType": enum (QuoteType),
  "plaintextBody": string,
  "sender": string,
  "attachments": [
    {
      object (ChatAttachmentMetadata)
    }
  ],
  "forwardedMetadata": {
    object (ForwardedMetadata)
  }
}
Felder
messageId

string

Nur Ausgabe. Ressourcenname der ursprünglichen Nachricht, die zitiert oder weitergeleitet wird. Format: spaces/{space}/messages/{message}

lastUpdateTime

string

Nur Ausgabe. Zeitstempel, der angibt, wann die ursprüngliche Nachricht erstellt oder zuletzt aktualisiert wurde, bevor sie zitiert oder weitergeleitet wurde. Format: ISO 8601-Zeitstempel.

quoteType

enum (QuoteType)

Nur Ausgabe. Die Art des Angebots.

plaintextBody

string

Nur Ausgabe. Snapshot des Textkörpers der ursprünglichen Nachricht zum Zeitpunkt des Zitierens oder Weiterleitens. Formatiert mit Markdown für FORWARD und Nur-Text für REPLY.

sender

string

Nur Ausgabe. Der Anzeigename des Autors der ursprünglichen Nachricht.

attachments[]

object (ChatAttachmentMetadata)

Nur Ausgabe. Anhänge, die Teil der ursprünglichen Nachricht waren. Wird nur für den Angebotstyp FORWARD ausgefüllt.

forwardedMetadata

object (ForwardedMetadata)

Nur Ausgabe. Metadaten zur Quellunterhaltung der weitergeleiteten Nachricht. Wird nur für den Angebotstyp FORWARD ausgefüllt.

ForwardedMetadata

JSON-Darstellung
{
  "conversationId": string,
  "conversationDisplayName": string
}
Felder
conversationId

string

Nur Ausgabe. Der Ressourcenname der Quellunterhaltung. Format: spaces/{space}

conversationDisplayName

string

Nur Ausgabe. Der Anzeigename der Quellunterhaltung zum Zeitpunkt der Weiterleitung der Nachricht. 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.

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 Google Chat hochgeladen.

QuoteType

Der Zitattyp, der angibt, ob die Nachricht eine Antwort mit Zitat oder eine weitergeleitete Nachricht ist.

Enums
QUOTE_TYPE_UNSPECIFIED Reserviert. Nicht definierter Angebotstyp.
REPLY Die Nachricht ist eine Antwort mit Zitat auf eine ursprüngliche Nachricht im selben Thread.
FORWARD Die Nachricht wird von einer ursprünglichen Nachricht in einer anderen Unterhaltung oder von einem anderen Thread in derselben Unterhaltung weitergeleitet.

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.messages
  • https://www.googleapis.com/auth/chat.messages.readonly