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 búsqueda, esta herramienta busca conversaciones en las que la búsqueda es una subcadena que no distingue mayúsculas de minúsculas del nombre visible de la conversación.

Si se proporcionan tanto los participantes como la búsqueda, esta herramienta encuentra conversaciones por participantes y, luego, las filtra por nombre visible.

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

Esta herramienta solo muestra las conversaciones de las que forma parte 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 debe continuar con la búsqueda.

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

Solicitud de 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

Es el mensaje de solicitud para la RPC de FindConversations.

SearchConversationsRequest

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

string

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

pageSize

integer

Opcional. Es la cantidad máxima de espacios que se devolverán. El servicio puede mostrar menos que este valor. Si no se especifica, se devolverá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

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

participants[]

string

Opcional. Lista de direcciones de correo electrónico de los participantes para filtrar las conversaciones, sin incluir al llamador.

Esquema de salida

Es el mensaje de respuesta para la RPC de FindConversations.

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

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 (lo 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 la duración en nanosegundos, 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 ser un valor entre 0 y 999,999,999, inclusive.

ConversationType

Define el tipo de conversación.

Enums
CONVERSATION_TYPE_UNSPECIFIED Sin especificar.
NAMED_SPACE Es un espacio con nombre.
GROUP_CHAT Un chat en grupo entre tres 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: ❌