Skip to content

Cronofy MCP by usefulapi

by usefulapi.io · remote · no sign-in to list tools · v1.16.3 · published by io.usefulapi

MCP server for Cronofy — read calendars, events and free/busy, and create, update or delete events.

Deletes · 2

8 tools: 2 can delete or cancel things and 6 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http cronofy https://cronofy.usefulapi.io/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

8 tools

Deletes or cancels 2Claude Code: deny
  • cronofy_delete_eventDeletes an event (by your event_id) from a real connected calendar.No findings

    Why it is in this group

    • The name "cronofy_delete_event" says "delete": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Deletes an event (by your event_id) from a real connected calendar. Destructive. API: DELETE /v1/calendars/{calendar_id}/events.

    Annotations the server declares

    • title: Delete event
    • destructiveHint: true
  • cronofy_upsert_eventCreates or updates an event on a REAL connected calendar (upsert by event_id).No findings

    Why it is in this group

    • The name "cronofy_upsert_event" says "upsert": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Create or update event
    • destructiveHint: true
Only reads 6Claude Code: allow
  • cronofy_get_accountGet the authenticated Cronofy account's details (id, email, name, default tzid, locale).No findings

    Why it is in this group

    • The name "cronofy_get_account" says "get": a word for reading.
    Description, as the server wrote it
    Get the authenticated Cronofy account's details (id, email, name, default tzid, locale). API: GET /v1/account.

    Annotations the server declares

    • title: Get account
    • readOnlyHint: true
  • cronofy_get_free_busyRead free/busy information across the account's calendars over a time window.No findings

    Why it is in this group

    • The name "cronofy_get_free_busy" says "get": a word for reading.
    Description, as the server wrote it
    Read free/busy information across the account's calendars over a time window. Returns { pages, free_busy }. API: GET /v1/free_busy.

    Annotations the server declares

    • title: Get free/busy
    • readOnlyHint: true
  • cronofy_get_userinfoGet the OpenID-style profile of the authenticated user (sub, email, Cronofy profile info).No findings

    Why it is in this group

    • The name "cronofy_get_userinfo" says "get": a word for reading.
    Description, as the server wrote it
    Get the OpenID-style profile of the authenticated user (sub, email, Cronofy profile info). API: GET /v1/userinfo.

    Annotations the server declares

    • title: Get userinfo
    • readOnlyHint: true
  • cronofy_list_calendarsList all calendars the authenticated account can see (id, name, profile, readonly, primary).No findings

    Why it is in this group

    • The name "cronofy_list_calendars" says "list": a word for reading.
    Description, as the server wrote it
    List all calendars the authenticated account can see (id, name, profile, readonly, primary). API: GET /v1/calendars.

    Annotations the server declares

    • title: List calendars
    • readOnlyHint: true
  • cronofy_list_profilesList the connected calendar accounts/profiles (e.g.No findings

    Why it is in this group

    • The name "cronofy_list_profiles" says "list": a word for reading.
    Description, as the server wrote it
    List the connected calendar accounts/profiles (e.g. Google, Office 365) linked to this Cronofy account. API: GET /v1/profiles.

    Annotations the server declares

    • title: List profiles
    • readOnlyHint: true
  • cronofy_read_eventsRead events across the account's calendars over a time window.No findings

    Why it is in this group

    • The name "cronofy_read_events" says "read": a word for reading.
    Description, as the server wrote it
    Read events across the account's calendars over a time window. Returns { pages, events }. API: GET /v1/events.

    Annotations the server declares

    • title: Read events
    • readOnlyHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.16.3. Values in angle brackets are yours to fill in.

claude mcp add --transport http cronofy https://cronofy.usefulapi.io/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__cronofy__cronofy_get_account",
      "mcp__cronofy__cronofy_get_userinfo",
      "mcp__cronofy__cronofy_list_calendars",
      "mcp__cronofy__cronofy_list_profiles",
      "mcp__cronofy__cronofy_read_events",
      "mcp__cronofy__cronofy_get_free_busy"
    ],
    "ask": [],
    "deny": [
      "mcp__cronofy__cronofy_upsert_event",
      "mcp__cronofy__cronofy_delete_event"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as cronofy. Review it before you use it.