MCP Tools Reference: chatmcp.googleapis.com

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

Поиск сообщений в Google Chat с использованием ключевых слов и фильтров. Работает во всех пространствах, к которым пользователь имеет доступ, или может быть ограничен конкретной беседой.

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

Запрос 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": "search_messages",
    "arguments": {
      // provide these details according to the tool MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Схема ввода

Запрос на поиск сообщений в Google Chat по ключевым словам и фильтрам. Работает во всех пространствах, к которым пользователь имеет доступ, или может быть ограничен конкретной беседой.

SearchMessagesRequest

JSON-представление
{
  "searchParameters": {
    object (SearchParameters)
  },
  "orderBy": enum (OrderBy),
  "pageSize": integer,
  "pageToken": string
}
Поля
searchParameters

object ( SearchParameters )

Обязательно. Параметры поиска, используемые для выполнения поиска.

orderBy

enum ( OrderBy )

Необязательный параметр. Задает порядок возврата результатов. Поддерживаемые значения: CREATE_TIME_DESC , CREATE_TIME_ASC или RELEVANCE_DESC . ПРИМЕЧАНИЕ: RELEVANCE_DESC нельзя использовать, если используется фильтр is_unread. По умолчанию используется RELEVANCE_DESC , если is_unread не установлено в true, в противном случае используется CREATE_TIME_DESC .

pageSize

integer

Необязательный параметр. Максимальное количество возвращаемых результатов (до 100). Если параметр не указан, возвращается не более 25 результатов.

pageToken

string

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

Параметры поиска

JSON-представление
{
  "keywords": [
    string
  ],
  "conversationId": string,
  "sender": string,
  "isUnread": boolean,
  "hasLink": boolean,
  "startTime": string,
  "endTime": string,
  "mentionsMe": boolean,
  "conversationIncludesUser": string,
  "spaceDisplayNames": [
    string
  ]
}
Поля
keywords[]

string

Необязательно. Набор ключевых слов, используемых для фильтрации результатов.

conversationId

string

Необязательный параметр. Ограничивает поиск определенным идентификатором беседы, возвращаемым инструментом search_conversations. Формат: spaces/{ID} .

sender

string

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

isUnread

boolean

Необязательно. Фильтр для сообщений, которые не были прочитаны вызывающим пользователем.

hasLink

boolean

Необязательно. Фильтр для сообщений, содержащих хотя бы один URL-адрес.

startTime

string

Необязательно. Фильтр для сообщений, созданных после этого времени. Формат: метка времени ISO 8601.

endTime

string

Необязательно. Фильтр для сообщений, созданных до этого времени. Формат: метка времени ISO 8601.

mentionsMe

boolean

Необязательно. Фильтр для сообщений, в которых явно указан вызывающий пользователь.

conversationIncludesUser

string

Необязательно. Фильтр для сообщений в личных сообщениях и групповых чатах, содержащих адрес электронной почты или идентификатор конкретного пользователя.

spaceDisplayNames[]

string

Необязательно. Фильтрация по списку названий пространств; отображаемые названия пространств совпадут частично. Примечание: возвращаются только 5 лучших совпадений.

Сортировать по

Указывает порядок возврата результатов. По умолчанию используется RELEVANCE_DESC, если is_unread не задано в значение true, в противном случае используется CREATE_TIME_DESC.

Перечисления
ORDER_BY_UNSPECIFIED Значение по умолчанию.
CREATE_TIME_DESC Сортировать по времени создания в порядке убывания.
RELEVANCE_DESC Отсортируйте по релевантности в порядке убывания.

Схема вывода

Ответ на запрос поиска сообщений в Google Chat. Если поле next_page_token заполнено, вызов функции SearchMessages можно повторить с этим токеном для получения следующей страницы результатов.

SearchMessagesResponse

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

object ( ChatMessage )

Список объектов сообщений, соответствующих критериям поиска, упорядоченный в соответствии с параметром запроса order_by .

nextPageToken

string

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

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

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

string

Имя ресурса сообщения. Формат: spaces/{space}/messages/{message}

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

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

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

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

Перечисления
USER_TYPE_UNSPECIFIED Не указано.
HUMAN Пользователь-человек.
APP Пользователь приложения.

Источник

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

Перечисления
SOURCE_UNSPECIFIED Сдержанный.
DRIVE_FILE Это файл из Google Диска.
UPLOADED_CONTENT Файл загружен в чат.

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

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