Herramienta: suggest_time
Sugiere períodos en uno o más calendarios. Para acceder al calendario principal, agrega "primary" en el campo attendee_emails.
Usa esta herramienta para consultas como las siguientes:
- ¿Cuándo estamos todos libres para una reunión?
- Busca un horario de 30 minutos en el que ambos estemos disponibles.
- Verifica si jane.doe@google.com está libre el lunes por la mañana.
Ejemplo:
suggest_time(
attendeeEmails=['joedoe@gmail.com', 'janedoe@gmail.com'],
startTime='2024-09-10T00:00:00',
endTime='2024-09-17T00:00:00',
durationMinutes=60,
preferences={
'startHour': '09:00',
'endHour': '17:00',
'excludeWeekends': True
}
)
# Returns up to 5 suggested time slots where both users are available for at least one hour between 9:00 AM and 5:00 PM on weekdays from September 10 through September 16, 2024.
En el siguiente ejemplo, se muestra cómo usar curl para invocar la herramienta MCP suggest_time.
| Solicitud de Curl |
|---|
curl --location 'https://calendarmcp.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "suggest_time", "arguments": { // provide these details according to the tool MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Esquema de entrada
Mensaje de solicitud de SuggestTime.
SuggestTimeRequest
| Representación JSON |
|---|
{
"attendeeEmails": [
string
],
"startTime": string,
"endTime": string,
"timeZone": string
"durationMinutes": integer
"preferences": {
object ( |
| Campos | |
|---|---|
attendeeEmails[] |
Obligatorio. Son los correos electrónicos de los asistentes para los que se debe buscar tiempo libre. |
startTime |
Obligatorio. Es el inicio del intervalo para la consulta con el formato ISO 8601. |
endTime |
Obligatorio. Es el final del intervalo para la consulta con el formato ISO 8601. |
Campo de unión
|
|
timeZone |
Es opcional. Es la zona horaria que se usa para los valores de tiempo. Este campo acepta nombres de la base de datos de zonas horarias de IANA, por ejemplo, |
Campo de unión
|
|
durationMinutes |
Es opcional. Es la duración mínima de un horario libre en minutos. El valor predeterminado es de 30 minutos. |
Campo de unión
|
|
preferences |
Son las preferencias para las que se debe buscar el horario sugerido. |
Preferencias
| Representación JSON |
|---|
{ "startHour": string "endHour": string "excludeWeekends": boolean "pageSize": integer } |
| Campos | |
|---|---|
Campo de unión
|
|
startHour |
Es la hora de inicio preferida del día (p.ej., |
Campo de unión
|
|
endHour |
Es la hora de finalización preferida del día (p.ej., |
Campo de unión
|
|
excludeWeekends |
Indica si se deben excluir los fines de semana. |
Campo de unión
|
|
pageSize |
Es la cantidad máxima de horarios que se mostrarán. El valor predeterminado es 5. |
Esquema de salida
Mensaje de respuesta de SuggestTime.
SuggestTimeResponse
| Representación JSON |
|---|
{
"timeSlots": [
{
object ( |
| Campos | |
|---|---|
timeSlots[] |
Es la lista de horarios sugeridos. |
TimeSlot
| Representación JSON |
|---|
{ "startTime": string, "endTime": string, "durationMinutes": integer } |
| Campos | |
|---|---|
startTime |
Es la hora de inicio del horario libre como una marca de tiempo con formato ISO 8601. |
endTime |
Es la hora de finalización del horario libre como una marca de tiempo con formato ISO 8601. |
durationMinutes |
Es la duración del horario libre en minutos. |
Anotaciones de herramientas
Sugerencia destructiva: ❌ | Sugerencia idempotente: ✅ | Sugerencia de solo lectura: ✅ | Sugerencia de mundo abierto: ❌