MCP Tools Reference: chatmcp.googleapis.com

Инструмент: list_messages

Извлекает сообщения из указанной беседы в Google Chat (пространство, личные сообщения или групповые сообщения). Позволяет фильтровать сообщения по ветке, временному диапазону и количеству сообщений. Кроме того, можно получить следующую страницу сообщений для получения более подробной информации. Личные сообщения (сообщения, видимые только одному пользователю) отфильтровываются.

В следующем примере показано, как использовать curl для вызова инструмента MCP list_messages .

Запрос Curl
curl --location 'https://chatmcp.googleapis.com/mcp' \
--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 tool MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Схема ввода

Запрос сообщения для RPC-вызова ListMessages.

ListChatMessagesRequest

JSON-представление
{
  "conversationId": string,
  "threadId": string,
  "pageSize": integer,
  "pageToken": string,
  "startTime": string,
  "endTime": string
}
Поля
conversationId

string

Обязательно. Идентификатор беседы. Беседа может быть пробелом, личным сообщением (DM) или групповым чатом/чатом. Формат: пробелы/{пробел}

threadId

string

Необязательный параметр. Идентификатор конкретной ветки обсуждения. Если указан, будут возвращены только сообщения из этой ветки. Если опущен, будут учитываться сообщения из всех веток обсуждения. Формат: пробелы/{пробел}/ветки/{ветка}

pageSize

integer

Необязательный параметр. Максимальное количество возвращаемых сообщений. Сервис может вернуть меньше этого значения. Если параметр не указан, по умолчанию используется 20. Максимально допустимое значение — 50.

pageToken

string

Необязательный параметр. Токен страницы, полученный из предыдущего вызова функции list_messages. Укажите его, чтобы получить следующую страницу.

startTime

string

Необязательно. Метка времени ISO 8601 для фильтрации сообщений. Будут возвращены только сообщения, созданные после этого времени.

endTime

string

Необязательно. Метка времени ISO 8601 для фильтрации сообщений. Будут возвращены только сообщения, созданные до этого времени.

Схема вывода

Ответное сообщение для RPC-запроса ListMessages.

ListChatMessagesResponse

JSON-представление
{
  "messages": [
    {
      object (ChatMessage)
    }
  ],
  "nextPageToken": string
}
Поля
messages[]

object ( ChatMessage )

Список полученных сообщений в обратном хронологическом порядке (сначала самые новые).

nextPageToken

string

Токен, который можно отправить в качестве page_token в последующем ListMessagesRequest для получения следующей страницы сообщений. Если это поле пустое, страниц больше нет.

Сообщение в чате

JSON-представление
{
  "messageId": string,
  "threadId": string,
  "plaintextBody": string,
  "sender": {
    object (User)
  },
  "createTime": string,
  "threadedReply": boolean,
  "attachments": [
    {
      object (ChatAttachmentMetadata)
    }
  ],
  "reactionSummaries": [
    {
      object (ReactionSummary)
    }
  ]
}
Поля
messageId

string

Имя ресурса сообщения. Формат: пробелы/{пробел}/сообщения/{сообщение}

threadId

string

Ветка обсуждения, к которой относится это сообщение. Если сообщение не относится к какой-либо ветке, это поле будет пустым. Формат: пробелы/{пробел}/ветки/{ветка}

plaintextBody

string

Текст сообщения в обычном формате.

sender

object ( User )

Отправитель сообщения.

createTime

string

Только вывод. Отметка времени создания сообщения.

threadedReply

boolean

Является ли сообщение ответом на сообщение в ветке обсуждения.

attachments[]

object ( ChatAttachmentMetadata )

Приложения, вложенные в сообщение.

reactionSummaries[]

object ( ReactionSummary )

Сводка реакций с помощью эмодзи, включенная в сообщение.

Пользователь

JSON-представление
{
  "userId": string,
  "displayName": string,
  "email": string,
  "userType": enum (UserType)
}
Поля
userId

string

Имя ресурса пользователя чата. Формат: users/{user}.

displayName

string

Отображаемое имя пользователя чата.

email

string

Адрес электронной почты пользователя. Это поле заполняется только в том случае, если тип пользователя — HUMAN.

userType

enum ( UserType )

Тип пользователя.

Метаданные вложения чата

JSON-представление
{
  "attachmentId": string,
  "filename": string,
  "mimeType": string,
  "source": enum (Source)
}
Поля
attachmentId

string

Имя ресурса вложения. Формат: пробелы/{пробел}/сообщения/{сообщение}/вложения/{вложение}.

filename

string

Название вложенного файла.

mimeType

string

Тип содержимого (MIME-тип).

source

enum ( Source )

Источник вложения.

РеакцияКраткое содержание

JSON-представление
{
  "emoji": string,
  "count": integer
}
Поля
emoji

string

Строка в формате Юникода для эмодзи или пользовательское имя эмодзи.

count

integer

Общее количество реакций с использованием соответствующего эмодзи.

Аннотации инструментов

Подсказка о разрушительном эффекте: ❌ | Подсказка об идемпотентности: ✅ | Подсказка только для чтения: ✅ | Подсказка об открытом мире: ❌