MCP Tools Reference: chatmcp.googleapis.com

Tool: send_message

Sendet eine Google Chat-Nachricht mit Markdown-Formatierung an eine Unterhaltung.

Für dieses Tool werden eine Unterhaltungs-ID, eine optionale Thread-ID und ein Nachrichtentext als Eingaben verwendet.

Unterhaltungs-IDs lassen sich mit dem Tool search_conversations ermitteln.

Sie gibt die erstellte Nachricht zurück.

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

Eingabeschema

SendMessageRequest

JSON-Darstellung
{
  "conversationId": string,
  "threadId": string,
  "messageText": string
}
Felder
conversationId

string

Erforderlich. Die ID der Unterhaltung (z.B. „spaces/AAAA...“), an die die Nachricht gesendet werden soll.

threadId

string

Optional. Die ID des Threads (z.B. „spaces/AAAA.../threads/BBBB...“), an den die Nachricht gesendet werden soll. Wenn nicht festgelegt, wird die Nachricht in einem neuen Thread gesendet.

messageText

string

Erforderlich. Der Hauptinhalt der Nachricht. Formatierungen können mit Standard-Markdown hinzugefügt werden. Tabellen werden NICHT unterstützt. Die folgenden Formatierungen werden unterstützt:

  • Fett:**text**
  • Kursiv:*text* oder _text_
  • Durchgestrichen:~~text~~
  • Monospace:text
  • Monospace-Block:
```
line 1
line 2
```
  • warriors.Aufzählungsliste:
* item 1
* item 2
  • Sortierte Liste:
1. item 1
2. item 2
  • Codeblock-Zitat:> quoted text
  • Hyperlink:[label](url)
  • Nutzer erwähnen:Verwenden Sie ein selbstschließendes HTML-Tag chat-user mit den Attributen data-email="user@example.com" oder data-user="users/USER_ID". Verwenden Sie das Attribut data-user mit USER_ID, falls bekannt, und andernfalls das Attribut „data-email“ mit der E-Mail-Adresse des Nutzers. Wenn Sie das Attribut data-user verwenden, müssen Sie das Präfix „users/“ einfügen, das in anderen Tool-Rückgabewerten zu sehen ist. Hinweis: Pro Nachricht sind maximal 10 Erwähnungen zulässig. Es ist strengstens untersagt, alle Nutzer zu erwähnen, z.B. mit @all oder einem HTML-Tag mit users/all.
  • Benutzerdefinierte Emojis:Verwenden Sie ein selbstschließendes HTML-Tag chat-emoji mit den Attributen data-custom-emoji="customEmojis/abc" oder data-emoji-name=":xyz:".

Ausgabeschema

Antwort auf das Senden einer Nachricht an eine Google Chat-Unterhaltung.

SendMessageResponse

JSON-Darstellung
{
  "message": {
    object (ChatMessage)
  }
}
Felder
message

object (ChatMessage)

Die gesendete Nachricht.

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 Teil eines Threads ist. Format: spaces/{space}/threads/{thread}

plaintextBody

string

Textkörper der Nachricht mit Markdown-Formatierung.

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 in der Nachricht enthaltene Zusammenfassung der Emoji-Reaktionen.

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

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 wird.

Zusammen mit dem Titelstring sind 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 Einheiten interagieren. Wenn „false“, kann das Tool nur mit internen Einheiten interagieren. Ein Web-Suchtool wäre beispielsweise frei verfügbar, ein Memory-Tool jedoch nicht.

Destruktiver Hinweis: ❌ | Idempotenter Hinweis: ❌ | Nur-Lese-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.create