Hi all,
I’ve been having a really frustrating issue with the Google Calendar Create Event tool and AI Agent node.
Here is my setup:
The workflow is supposed to work as follows:
The original query is passed to the Calendar Agent, which, for the purposes of this demonstration, only has access to the Create Event tool (I’ve removed all other tools to narrow down the issue). The agent can successfully create single events, but when asked to create events on different days, it seems to ignore the second event’s details and instead duplicates the details of the first event. To better illustrate the issue, consider the following input:
Block out 9am to 4pm this Sunday and 9am to 3pm Saturday for skiing in Big Bear, please. Today is Tuesday, January 7th, 2025.
Whenever I run this, the calendar agent creates two events, but creates both of them on the same day (see Figure 1) even though the inputs for each run are correct. The outputs, however, show the same date and time for each entry. In other words, the original query is asking to block out Saturday from 9am to 3pm and Sunday from 9am to 4pm for a ski trip. However, the system consistently fails to create the event for Sunday and instead creates two events on Saturday from 9am to 3pm (see Figure 1).
Figure 1:
Again, what confuses me is that the inputs are correct… (see logs below):
Google Calendar Node Create Event Log 1:
Input:
{
"start": "2025-01-11T09:00:00", <- CORRECT INPUT START
"end": "2025-01-11T15:00:00", <- CORRECT INPUT END
"isAllDayEventNo": "no",
"eventDescription": "",
"eventLocation": "Big Bear",
"repeatUntil": "",
"eventTitle": "Skiing"
}
Output:
{
"kind": "calendar#event",
"etag": "REDACTED",
"id": "REDACTED",
"status": "confirmed",
"htmlLink": "REDACTED",
"created": "2025-01-08T02:31:00.000Z",
"updated": "2025-01-08T02:31:00.113Z",
"summary": "Skiing",
"location": "Big Bear",
"creator": {
"email": "REDACTED",
"self": true
},
"organizer": {
"email": "REDACTED",
"self": true
},
"start": {
"dateTime": "2025-01-11T09:00:00-08:00", <- CORRECT OUTPUT START
"timeZone": "America/Los_Angeles"
},
"end": {
"dateTime": "2025-01-11T15:00:00-08:00", <- CORRECT OUTPUT END
"timeZone": "America/Los_Angeles"
},
"iCalUID": "REDACTED",
"sequence": 0,
"reminders": {
"useDefault": true
},
"eventType": "default"
}
Google Calendar Node Create Event Log 2:
Input:
{
"start": "2025-01-12T09:00:00", <- CORRECT INPUT START
"end": "2025-01-12T16:00:00", <- CORRECT INPUT END
"isAllDayEventNo": "no",
"eventDescription": "",
"eventLocation": "Big Bear",
"repeatUntil": "",
"eventTitle": "Skiing"
}
Output:
{
"kind": "calendar#event",
"etag": "REDACTED",
"id": "REDACTED",
"status": "confirmed",
"htmlLink": "REDACTED",
"created": "2025-01-08T02:31:00.000Z",
"updated": "2025-01-08T02:31:00.230Z",
"summary": "Skiing",
"location": "Big Bear",
"creator": {
"email": "REDACTED",
"self": true
},
"organizer": {
"email": "REDACTED",
"self": true
},
"start": {
"dateTime": "2025-01-11T09:00:00-08:00", <- INCORRECT OUTPUT START
"timeZone": "America/Los_Angeles"
},
"end": {
"dateTime": "2025-01-11T15:00:00-08:00", <- INCORRECT OUTPUT END
"timeZone": "America/Los_Angeles"
},
"iCalUID": "REDACTED",
"sequence": 0,
"reminders": {
"useDefault": true
},
"eventType": "default"
}
As you can see, the output is incorrect despite the inputs being correct.
I don’t understand how the output is so consistently wrong.
If anyone knows what is going wrong, please help.