> ## Documentation Index
> Fetch the complete documentation index at: https://pomeroy.app/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Calendar

> Your AI assistant can read your Apple Calendar, create an event, and change one you name. It never deletes an event and cannot send invitations.

Once you switch Calendar on, an assistant can read today, any day, or a range of
days across every calendar your Mac shows, and add to them.

Times come back in your Mac's own time zone, and every timestamp carries an
explicit UTC offset, so an assistant cannot quietly guess wrong about which day
you meant.

<Columns cols={2}>
  <div>
    **Can**

    * Read today, one day, or a range of days
    * Create an event, with a location and notes if you give them
    * Change an event you name: its time, title, calendar, location or notes
  </div>

  <div>
    **Cannot**

    * Delete an event
    * Send or answer invitations
    * Change anything you did not ask it to change
  </div>
</Columns>

## Tools

| Tool                    | What it does                                                                       | Kind  |
| ----------------------- | ---------------------------------------------------------------------------------- | ----- |
| `calendar_today`        | Today's events. Takes no arguments; "today" resolves in your Mac's local time zone | Read  |
| `calendar_events`       | Events across whole local days, `from` through `to` inclusive                      | Read  |
| `calendar_create_event` | Creates an event and returns it as saved, with its id                              | Write |
| `calendar_update_event` | Updates fields of an event by id. Only the fields sent are changed                 | Write |

## Try it

```text theme={null}
What's on my calendar today?
What does my week look like?
Am I free on Friday afternoon?
Add lunch with Priya on Thursday at 1pm.
Move my dentist appointment to 3pm.
Put the school play on the family calendar for the 14th at 7pm.
```

## Worth knowing

<AccordionGroup>
  <Accordion title="Changing an event only changes what you asked for" icon="pen">
    `calendar_update_event` applies only the fields it was sent. Everything else
    on the event is left exactly as it was. To clear a location or the notes,
    the assistant sends an empty string for that field. There is no way to blank
    a field by accident.
  </Accordion>

  <Accordion title="Recurring events change one occurrence" icon="repeat">
    Updating a recurring event changes **only that occurrence**, never the whole
    series. There is no tool that edits a recurrence rule.
  </Accordion>

  <Accordion title="Deleting is not available" icon="trash-can-slash">
    There is no delete tool for Calendar, so no request produces one. If an
    assistant says it has deleted an event, it has not. Check the Calendar app.
  </Accordion>

  <Accordion title="Every calendar your Mac shows" icon="calendars">
    Including subscribed and shared calendars, because EventKit presents them
    all. Hiding a calendar in the Calendar app does not hide it here.
  </Accordion>
</AccordionGroup>

## Permissions

Switching Calendar on asks macOS for access to your calendars
(`NSCalendarsFullAccessUsageDescription`). The prompt names Pomeroy, and nothing
is requested until you flip the toggle.

[What Pomeroy asks macOS for](/docs/privacy/what-pomeroy-asks-macos-for)
