Ferramenta: suggest_time
Sugere períodos em um ou mais calendários. Para acessar a agenda principal, adicione "primary" ao campo "attendee_emails".
Use essa ferramenta para consultas como:
- Quando todos nós podemos nos reunir?
- Encontre um horário de 30 minutos em que os dois estejam disponíveis.
- Verifique se jane.doe@google.com está livre na manhã de segunda-feira.
Exemplo:
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.
O exemplo a seguir demonstra como usar curl para invocar a ferramenta suggest_time MCP.
| Solicitação 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
Mensagem de solicitação para SuggestTime.
SuggestTimeRequest
| Representação JSON |
|---|
{
"attendeeEmails": [
string
],
"startTime": string,
"endTime": string,
"timeZone": string
"durationMinutes": integer
"preferences": {
object ( |
| Campos | |
|---|---|
attendeeEmails[] |
Obrigatório. Os e-mails dos convidados para encontrar horários livres. |
startTime |
Obrigatório. O início do intervalo para a consulta formatada conforme ISO 8601. |
endTime |
Obrigatório. O fim do intervalo para a consulta formatada de acordo com a ISO 8601. |
Campo de união
|
|
timeZone |
Opcional. Fuso horário usado para os valores de tempo. Esse campo aceita nomes do banco de dados de fuso horário da IANA, por exemplo, |
Campo de união
|
|
durationMinutes |
Opcional. Duração mínima de um período livre em minutos. O padrão é de 30 minutos. |
Campo de união
|
|
preferences |
As preferências para encontrar o horário sugerido. |
Preferências
| Representação JSON |
|---|
{ "startHour": string "endHour": string "excludeWeekends": boolean "pageSize": integer } |
| Campos | |
|---|---|
Campo de união
|
|
startHour |
A hora de início preferida do dia (por exemplo, |
Campo de união
|
|
endHour |
A hora de término preferida do dia (por exemplo, |
Campo de união
|
|
excludeWeekends |
Se os fins de semana devem ser excluídos. |
Campo de união
|
|
pageSize |
Número máximo de intervalos de tempo a serem retornados. O padrão é 5. |
Esquema de saída
Mensagem de resposta para SuggestTime.
SuggestTimeResponse
| Representação JSON |
|---|
{
"timeSlots": [
{
object ( |
| Campos | |
|---|---|
timeSlots[] |
Lista de períodos sugeridos. |
TimeSlot
| Representação JSON |
|---|
{ "startTime": string, "endTime": string, "durationMinutes": integer } |
| Campos | |
|---|---|
startTime |
O horário de início do período livre como um carimbo de data/hora formatado em ISO 8601. |
endTime |
O horário de término do período livre como um carimbo de data/hora formatado em ISO 8601. |
durationMinutes |
A duração do período livre em minutos. |
Anotações de ferramentas
Dica destrutiva: ❌ | Dica idempotente: ✅ | Dica somente leitura: ✅ | Dica de mundo aberto: ❌