MCP Server

cronofy

io.usefulapi/cronofy
Productivity Public & reachable MCP 2026-07-28

What this MCP does

Reads calendar events and availability and creates, updates, or deletes events on connected calendars.

cronofy_delete_event
Delete event
Deletes an event (by your event_id) from a real connected calendar. Destructive. API: DELETE /v1/calendars/{calendar_id}/events.
Destructive
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['calendar_id', 'event_id'], 'properties': {'event_id': {'type': 'string', 'description': 'YOUR event_id for the event to delete (sent in the JSON body).'}, 'calendar_id': {'type': 'string', 'description': 'Calendar id the event lives on.'}}}
cronofy_get_account
Get account
Get the authenticated Cronofy account's details (id, email, name, default tzid, locale). API: GET /v1/account.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
cronofy_get_free_busy
Get free/busy
Read free/busy information across the account's calendars over a time window. Returns { pages, free_busy }. API: GET /v1/free_busy.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['tzid'], 'properties': {'to': {'type': 'string', 'description': 'End of the window — date (yyyy-mm-dd) or ISO 8601 datetime.'}, 'from': {'type': 'string', 'description': 'Start of the window — date (yyyy-mm-dd) or ISO 8601 datetime.'}, 'tzid': {'type': 'string', 'description': 'REQUIRED time zone id for the response, e.g. "Etc/UTC".'}, 'calendar_ids': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Restrict to these calendar ids (sent as repeated calendar_ids[] params).'}, 'include_managed': {'type': 'boolean', 'description': 'Include events created via the Cronofy API. Default false.'}}}
cronofy_get_userinfo
Get userinfo
Get the OpenID-style profile of the authenticated user (sub, email, Cronofy profile info). API: GET /v1/userinfo.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
cronofy_list_calendars
List calendars
List all calendars the authenticated account can see (id, name, profile, readonly, primary). API: GET /v1/calendars.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
cronofy_list_profiles
List profiles
List the connected calendar accounts/profiles (e.g. Google, Office 365) linked to this Cronofy account. API: GET /v1/profiles.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
cronofy_read_events
Read events
Read events across the account's calendars over a time window. Returns { pages, events }. API: GET /v1/events.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['tzid'], 'properties': {'to': {'type': 'string', 'description': 'End of the window — date (yyyy-mm-dd) or ISO 8601 datetime.'}, 'from': {'type': 'string', 'description': 'Start of the window — date (yyyy-mm-dd) or ISO 8601 datetime.'}, 'tzid': {'type': 'string', 'description': 'REQUIRED time zone id for the response, e.g. "Etc/UTC" or "America/New_York".'}, 'calendar_ids': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Restrict to these calendar ids (sent as repeated calendar_ids[] params).'}, 'only_managed': {'type': 'boolean', 'description': 'Return only events created via the Cronofy API. Default false.'}, 'last_modified': {'type': 'string', 'description': 'Only events modified since this ISO 8601 datetime.'}, 'include_deleted': {'type': 'boolean', 'description': 'Include deleted events. Default false.'}, 'include_managed': {'type': 'boolean', 'description': 'Include events created via the Cronofy API. Default false.'}}}
cronofy_upsert_event
Create or update event
Creates or updates an event on a REAL connected calendar (upsert by event_id). This writes to the user's actual calendar. API: POST /v1/calendars/{calendar_id}/events.
Destructive
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['calendar_id', 'event_id', 'summary', 'start', 'end'], 'properties': {'end': {'type': 'string', 'description': 'Event end — ISO 8601 datetime or a date (yyyy-mm-dd) string.'}, 'tzid': {'type': 'string', 'description': 'Time zone id for the start/end, e.g. "America/New_York".'}, 'start': {'type': 'string', 'description': 'Event start — ISO 8601 datetime or a date (yyyy-mm-dd) string.'}, 'summary': {'type': 'string', 'description': 'Event title/summary.'}, 'event_id': {'type': 'string', 'description': 'YOUR unique id for the event. Re-using it updates the same event.'}, 'calendar_id': {'type': 'string', 'description': 'Target calendar id (from cronofy_list_calendars).'}, 'description': {'type': 'string', 'description': 'Event description/body.'}, 'location_description': {'type': 'string', 'description': 'Free-text location (sent as location.description).'}}}
Changed
cronofy_delete_event
Oct. 1, 2026, 2:42 a.m.
Changed
cronofy_upsert_event
Oct. 1, 2026, 2:42 a.m.
Changed
cronofy_get_free_busy
Oct. 1, 2026, 2:42 a.m.
Changed
cronofy_read_events
Oct. 1, 2026, 2:42 a.m.
Changed
cronofy_list_profiles
Oct. 1, 2026, 2:42 a.m.
Changed
cronofy_list_calendars
Oct. 1, 2026, 2:42 a.m.
Changed
cronofy_get_userinfo
Oct. 1, 2026, 2:42 a.m.
Changed
cronofy_get_account
Oct. 1, 2026, 2:42 a.m.
Added
cronofy_delete_event
Sept. 17, 2026, 12:53 p.m.
Added
cronofy_upsert_event
Sept. 17, 2026, 12:53 p.m.
Added
cronofy_get_free_busy
Sept. 17, 2026, 12:53 p.m.
Added
cronofy_read_events
Sept. 17, 2026, 12:53 p.m.
Added
cronofy_list_profiles
Sept. 17, 2026, 12:53 p.m.
Added
cronofy_list_calendars
Sept. 17, 2026, 12:53 p.m.
Added
cronofy_get_userinfo
Sept. 17, 2026, 12:53 p.m.
Added
cronofy_get_account
Sept. 17, 2026, 12:53 p.m.