MCP Tools Reference: chatmcp.googleapis.com

Herramienta: search_conversations

Busca conversaciones de Google Chat por nombre visible.

Si solo se proporcionan participantes, esta herramienta busca mensajes directos 1:1 (si se proporciona un participante) o chats grupales (si se proporcionan varios participantes) que incluyan a los participantes especificados y al usuario que llama.

Si solo se proporciona una consulta, esta herramienta busca conversaciones en las que la consulta es una subcadena que no distingue mayúsculas de minúsculas del nombre visible de la conversación.

Si se proporcionan participantes y una consulta, esta herramienta busca conversaciones por participantes y, luego, las filtra por nombre visible.

Si no se proporcionan participantes ni una consulta, esta herramienta muestra todas las conversaciones de las que es miembro el usuario que llama.

Esta herramienta solo muestra las conversaciones de las que es miembro el usuario que llama.

IMPORTANTE: Una lista de "conversaciones" vacía no significa que no haya más resultados en general. Si está presente "next_page_token", se pueden recuperar más páginas. Si obtienes una lista vacía, pero un "next_page_token", pregúntale al usuario si debes continuar con la búsqueda.

En el siguiente ejemplo, se muestra cómo usar curl para invocar la herramienta MCP search_conversations.

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

Esquema de entrada

Solicitud para buscar conversaciones de Google Chat con filtros.

SearchConversationsRequest

Representación JSON
{
  "spaceNameQuery": string,
  "pageSize": integer,
  "pageToken": string,
  "participants": [
    string
  ]
}
Campos
spaceNameQuery

string

Es opcional. Es el texto que se buscará en los nombres visibles del espacio.

pageSize

integer

Es opcional. Es la cantidad máxima de espacios que se mostrarán. El servicio puede mostrar menos que este valor. Si no se especifica, se mostrarán como máximo 100 espacios. El valor máximo es 1,000; valores superiores a 1,000 se convertirán en 1,000.

pageToken

string

Es opcional. Un token de página, recibido desde una llamada search_conversations anterior. Proporciona esto para recuperar la página siguiente.

participants[]

string

Es opcional. Es una lista de direcciones de correo electrónico de los participantes para filtrar las conversaciones, sin incluir a la persona que llama.

Esquema de salida

Respuesta que contiene la lista de conversaciones coincidentes.

SearchConversationsResponse

Representación JSON
{
  "conversations": [
    {
      object (Conversation)
    }
  ],
  "nextPageToken": string
}
Campos
conversations[]

object (Conversation)

Es una lista de objetos de conversación que coinciden con los criterios de búsqueda.

nextPageToken

string

Es un token que se puede enviar como page_token para recuperar la página siguiente. Si se omite este campo, no habrá páginas siguientes.

Conversación

Representación JSON
{
  "conversationId": string,
  "displayName": string,
  "conversationType": enum (ConversationType),
  "lastActiveTimestamp": string
}
Campos
conversationId

string

Es el ID de la conversación (p.ej., "spaces/AAAAAAAAA").

displayName

string

Es el nombre visible de la conversación.

conversationType

enum (ConversationType)

Es el tipo de conversación (DIRECT_MESSAGE, GROUP_CHAT o NAMED_SPACE).

lastActiveTimestamp

string (Timestamp format)

Es la última hora activa de la conversación en formato ISO 8601.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Marca de tiempo

Representación JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Representa los segundos de la hora UTC desde la época de Unix 1970-01-01T00:00:00Z. Debe estar entre -62135596800 y 253402300799 inclusive (que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z).

nanos

integer

Fracciones no negativas de un segundo a una resolución de nanosegundos. Este campo es la parte de nanosegundos de la duración, no una alternativa a los segundos. Los valores de segundos negativos con fracciones deben tener valores nanos no negativos que se cuentan hacia adelante en el tiempo. Debe estar entre 0 y 999,999,999 inclusive.

ConversationType

Define el tipo de conversación.

Enums
CONVERSATION_TYPE_UNSPECIFIED Sin especificar.
NAMED_SPACE Un espacio con nombre.
GROUP_CHAT Un chat grupal entre 3 o más personas.
DIRECT_MESSAGE Un mensaje directo entre dos personas o entre una persona y una app de Chat.

Anotaciones de herramientas

Sugerencia destructiva: ❌ | Sugerencia idempotente: ✅ | Sugerencia de solo lectura: ✅ | Sugerencia de mundo abierto: ❌