MCP Tools Reference: chatmcp.googleapis.com

Outil : send_message

Envoie un message Google Chat à une conversation avec la mise en forme Markdown.

Cet outil utilise un ID de conversation, un ID de fil de discussion facultatif et un texte de message comme entrées. Vous pouvez trouver les ID de conversation à l'aide de l'outil search_conversations. Il renvoie le message créé.

L'exemple suivant montre comment utiliser curl pour appeler l'outil MCP send_message.

Requête curl
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": "send_message",
    "arguments": {
      // provide these details according to the tool MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Schéma d'entrée

Demande d'envoi d'un message dans une conversation Google Chat.

SendMessageRequest

Représentation JSON
{
  "conversationId": string,
  "threadId": string,
  "messageText": string
}
Champs
conversationId

string

Obligatoire. ID de la conversation (par exemple, "spaces/AAAA...") à laquelle envoyer le message.

threadId

string

Facultatif. ID du fil de discussion (par exemple, "spaces/AAAA.../threads/BBBB...") auquel envoyer le message. Si cette valeur n'est pas définie, le message sera envoyé dans un nouveau fil de discussion.

messageText

string

Obligatoire. Contenu principal du message. Vous pouvez ajouter une mise en forme à l'aide de Markdown standard (notez que les tableaux ne sont PAS acceptés). Les formats suivants sont acceptés :

  • Gras : **text**
  • Italique : *text* ou _text_
  • Barré : ~~text~~
  • Monospace : text
  • Bloc monospace :
```
line 1
line 2
```
  • Liste à puces :
* item 1
* item 2
  • Liste numérotée :
1. item 1
2. item 2
  • Citation : > quoted text
  • Lien hypertexte : [label](url)
  • Mentionner un utilisateur : utilisez une balise HTML autoportante chat-user avec les attributs data-email="user@example.com" ou data-name="USER_ID". Privilégiez l'attribut data-name avec USER_ID si vous le connaissez, et utilisez l'attribut data-email avec l'adresse e-mail de l'utilisateur dans le cas contraire. Si vous utilisez l'attribut data-name, assurez-vous d'utiliser le USER_ID numérique brut et de NE PAS inclure le préfixe users/ visible dans les valeurs renvoyées par d'autres outils. Remarque : Vous pouvez mentionner jusqu'à 10 personnes par message. Il est strictement interdit de mentionner tous les utilisateurs (par exemple, en utilisant @all ou une balise HTML avec users/all).
  • Emoji personnalisé : utilisez une balise HTML à fermeture automatique chat-custom-emoji avec les attributs data-uid="abc" et data-emoji-name=":xyz:".

Schéma de sortie

Réponse à l'envoi d'un message à une conversation Google Chat.

SendMessageResponse

Représentation JSON
{
  "message": {
    object (ChatMessage)
  }
}
Champs
message

object (ChatMessage)

Message envoyé.

ChatMessage

Représentation JSON
{
  "messageId": string,
  "threadId": string,
  "plaintextBody": string,
  "sender": {
    object (User)
  },
  "createTime": string,
  "threadedReply": boolean,
  "attachments": [
    {
      object (ChatAttachmentMetadata)
    }
  ],
  "reactionSummaries": [
    {
      object (ReactionSummary)
    }
  ]
}
Champs
messageId

string

Nom de ressource du message. Format : spaces/{space}/messages/{message}

threadId

string

Fil de discussion auquel appartient ce message. Il sera vide si le message n'est pas associé à un fil de discussion. Format : spaces/{space}/threads/{thread}

plaintextBody

string

Corps du message au format Markdown.

sender

object (User)

Expéditeur du message.

createTime

string

Uniquement en sortie. Code temporel de création du message.

threadedReply

boolean

Indique si le message est une réponse dans un fil de discussion.

attachments[]

object (ChatAttachmentMetadata)

Pièces jointes incluses dans le message.

reactionSummaries[]

object (ReactionSummary)

Récapitulatif des réactions emoji inclus dans le message.

Utilisateur

Représentation JSON
{
  "userId": string,
  "displayName": string,
  "email": string,
  "userType": enum (UserType)
}
Champs
userId

string

Nom de ressource d'un utilisateur Chat. Format : users/{user}.

displayName

string

Nom à afficher d'un utilisateur Chat.

email

string

Adresse e-mail de l'utilisateur. Ce champ n'est renseigné que lorsque le type d'utilisateur est "HUMAN".

userType

enum (UserType)

Type d'utilisateur.

ChatAttachmentMetadata

Représentation JSON
{
  "attachmentId": string,
  "filename": string,
  "mimeType": string,
  "source": enum (Source)
}
Champs
attachmentId

string

Nom de ressource de la pièce jointe. Format : spaces/{space}/messages/{message}/attachments/{attachment}.

filename

string

Nom de la pièce jointe.

mimeType

string

Type de contenu (type MIME).

source

enum (Source)

Source de la pièce jointe.

ReactionSummary

Représentation JSON
{
  "emoji": string,
  "count": integer
}
Champs
emoji

string

Chaîne Unicode de l'emoji ou nom de l'emoji personnalisé.

count

integer

Nombre total de réactions utilisant l'emoji associé.

UserType

Type d'utilisateur Google Chat.

Enums
USER_TYPE_UNSPECIFIED Non spécifié.
HUMAN Utilisateur humain.
APP Utilisateur de l'application.

Source

Source de la pièce jointe.

Enums
SOURCE_UNSPECIFIED Réservé.
DRIVE_FILE Le fichier est un fichier Google Drive.
UPLOADED_CONTENT Le fichier est importé dans Chat.

Annotations d'outils

Indication de destruction : ❌ | Indication d'idempotence : ❌ | Indication de lecture seule : ❌ | Indication de monde ouvert : ✅