Skip to content

schedule_event converts Europe/Berlin to UTC instead of preserving TZID #231

Description

@wollir72

Bug description

When creating a calendar event through the Context Agent / MCP schedule_event tool, the supplied timezone is not preserved.

I created an event with:

  • Date: 2026-08-18
  • Start time: 12:30 PM
  • End time: 1:30 PM
  • Timezone: Europe/Berlin

The resulting event was created as:

  • 10:30–11:30
  • Timezone: UTC

The actual point in time is technically correct because Europe/Berlin is UTC+2 on that date, but the event timezone is wrong. The supplied Europe/Berlin timezone appears to be converted to UTC instead of being preserved as the event's TZID.

This is visible directly in the Nextcloud Calendar web interface.

Expected behavior

An event created with:

start_time: 12:30 PM
end_time: 1:30 PM
timezone: Europe/Berlin

should be stored/displayed as:

12:30–13:30
Europe/Berlin

and ideally represented in the VEVENT similar to:

DTSTART;TZID=Europe/Berlin:20260818T123000
DTEND;TZID=Europe/Berlin:20260818T133000

Actual behavior

The event is stored/displayed as:

10:30–11:30
UTC

So the timezone parameter is used for conversion, but the supplied timezone itself is lost.

Steps to reproduce

  1. Use the Context Agent / MCP calendar tool schedule_event.

  2. Create an event for 2026-08-18.

  3. Use:

    • start time: 12:30 PM
    • end time: 1:30 PM
    • timezone: Europe/Berlin
  4. Open the resulting event in the Nextcloud Calendar web interface.

  5. The event is shown as 10:30–11:30 UTC instead of 12:30–13:30 Europe/Berlin.

Environment

  • Nextcloud Server: 34.0.3
  • Context Agent: 2.7.0
  • Calendar app: 6.5.3
  • Deployment: Docker
  • Server timezone/use case: Germany / Europe/Berlin

Additional information

This is reproducible.

The same Context Agent installation otherwise works for creating events and for task access.

The issue seems to be specifically related to preserving the supplied IANA timezone (Europe/Berlin) when generating the calendar event.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions