I saw that BusyCal now has a Connector with Claude after its most recent update. I asked it a simple question. “Using the BusyCal Connector, can you tell me what the rest of my day is looks like?”
It got times wrong, It missed some calendar items altogether. When shown what was wrong, it came back with this:
"So UTC−5 is correct for CDT — my first instinct was right. The error was actually something simpler: I was misreading which UTC timestamp to use. BusyCal returns both
startDateandoccurrenceDateand I was inconsistently pulling from one or the other, and also making arithmetic mistakes when manually converting in my head across midnight boundaries.The honest answer: I was doing the UTC→local math by hand and making errors, especially for events that cross midnight UTC (which is only 7 PM CT). Going forward I’ll be more careful to consistently use
startDateand apply −5 hours, and double-check any event where the UTC time is between 00:00–05:00Z (since those are actually the previous evening in CT)."
I then asked it how to explain how it got a calendar event duration for tonight wrong - Claude said it was an hour, when it was an hour and 45 minutes. It replied
"That’s actually correct in the raw data — 1 hour 45 minutes, 7:45–9:30 PM. I reported “8:45 PM” as the end time, which was a straight arithmetic error on my part: I subtracted 5 hours from 02:30 UTC and got 8:30, then somewhere wrote 8:45. Pure mental math mistake, unrelated to the timezone issue.
*So there were actually two separate problems:
1. Timezone errors — inconsistent or wrong UTC offset application, especially for events crossing midnight UTC
2. Arithmetic errors — independent calculation mistakes even when the offset logic was correctThe honest summary: I shouldn’t be doing UTC→local conversion by hand at all. I was generating a narrative from raw JSON and doing mental math on each timestamp, which introduced compounding errors. The right approach is to treat the
startDate/endDateUTC values mechanically and consistently apply −5, and double-check any event where the UTC hour is <05:00 (since those belong to the previous evening locally). I’ll be more disciplined about this going forward."
I have a Pro account and was using Sonnet 4.6. for this one. I guess my frustration is that it gets so close to getting it right. I do believe that iteration is key, and with its memory, it should be able to handle this task correctly going forward.
In another job, using Cowork and Opus 4.6, I asked Claude to go to my May 2026 note in Obsidian, and I asked it to make calendar events for all of the premiere dates for the tv shows and movies in my Watchlist. These were the instructions:
"Can you look at the May 2026 file in Obsidian and take any lines from the Watchlist section and create calendar events of each of them in BusyCal?
*Each should be created in the Google Calendar called Media Releases, which already exists. Each should have a start time of 7:00 PM CST and an end time of 8:00 PM CST. Each should not have an alert. The title should be everything to the right of the date (sans double brackets).
Example - [[2026-05-01]] - [[Conbody Vs Everybody]] - [[Criterion Channel]] should read Conbody Vs Everybody - Criterion Channel in the title of the calendar event.
Let me know if you have any questions."
This is what it looked like in Obsidian:

It did a great job with it. The only note I had a GMT offset in the calendar, but other than that it was perfect. I asked it to save my preferences, so hopefully this will actually save me some time in the future.