Default get_calendar_events to all enabled accounts (#59)#60
Merged
rockfordlhotka merged 3 commits intoJun 2, 2026
Merged
Conversation
get_calendar_events threw "accountId is required" when both accountId and calendarId were omitted, even though accountId is schema-optional and sibling read tools (search_emails, list_calendars, get_emails, get_contacts) default to querying all accounts. This inconsistency read as a bug and was a top tool-call failure for consuming agents. When neither accountId nor calendarId is supplied, query all enabled accounts instead of throwing, mirroring list_calendars. The existing parallel fan-out and per-account warning aggregation already looped over validAccounts, so accounts that don't support calendar degrade into a warning. Bumps version to 1.3.4. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Replace the floating :latest tag with the explicit 1.3.4 tag so the deployed version is unambiguous and matches the image pushed for #59. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The GetGuide calendar.md skill still said accountId was required unless calendarId resolved one account. Align it with the #59 behavior change: omitting accountId now fans out across all enabled accounts. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
rockfordlhotka
deleted the
rockfordlhotka/59-calendar-read-tools-all-accounts
branch
June 2, 2026 17:04
This was referenced Jun 2, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes #59.
get_calendar_eventsthrewaccountId is requiredwhen bothaccountIdandcalendarIdwere omitted, even thoughaccountIdis declared optional in the tool schema and sibling read tools (search_emails,list_calendars,get_emails,get_contacts) default to querying all accounts. The inconsistency read as a bug — a caller following the schema (and the server's owndaily_briefingprompt guidance) got a hard error. It was observed downstream as a top tool-call failure for a consuming agent.When neither
accountIdnorcalendarIdis supplied, the tool now queries all enabled accounts instead of throwing, mirroringlist_calendars.Changes
GetCalendarEventsTool.cs— Replaced the throw-and-single-account logic with an up-frontvalidAccountslist (same shape assearch_emails):accountIdprovided → that single accountcalendarIdalone → existing auto-resolve-to-one-account path (unchanged)GetEnabledAccounts(); throwsNo accounts foundonly when none existvalidAccounts, so accounts that don't support calendar (e.g. IMAP) degrade gracefully into awarningsentry.accountIddescriptions to reflect "one or all accounts."GetCalendarEventsToolTests.cs— Replaced the two obsolete*_ThrowsMcpExceptiontests with*_QueriesAllEnabledAccounts(single- and multi-account merge/sort) and added*_NoAccountsConfigured_ThrowsMcpException.Directory.Build.props— Version bump1.3.3→1.3.4(patch, bug fix).Audit of the rest of issue #59's checklist (no code needed)
get_emails,list_calendars,get_contextual_email_summary,get_contacts— already default to all accounts ✅respond_to_event/create_eventcorrectly expect explicitaccountId;move_emailrequires it viaRequireNonEmpty✅daily_briefing's "omit accountId to query all at once" guidance is now consistent with the tool ✅Testing
dotnet test— all 244 tests pass.🤖 Generated with Claude Code