Skip to content

fluent-booking/manage-event-type

Create, edit, duplicate, activate, deactivate or delete an event type. dry_run previews any action and changes nothing. Edits are sectioned the same way the admin saves them, so send only the section you are changing; keys you leave out keep their current values, except weekly_schedules and date_overrides, which are replaced whole. update on the availability and limits sections needs a confirm_token, as does delete, which also refuses while ANY booking exists — past or cancelled included, since all of them are deleted with the event type — unless you pass force.

Ability

  • Kind: Tool
  • Toolset: scheduling
  • Edition: Core
  • Mode: destructive
  • Permission callback: PermissionGate::scheduleWriteGate()
  • Handler: SchedulingTools::manageEventType()
  • Source: fluent-booking/app/Modules/MCP/Tools/SchedulingTools.php:131

Input schema

ParameterTypeRequiredDescription
actionstringYesOne of: create, update, duplicate, activate, deactivate, delete.
event_idintegerNoRequired for everything except create.
calendar_idintegerNoRequired for create; the calendar the event type belongs to.
sectionstringNoupdate only. Which group of settings the fields belong to. One of: details, availability, limits, booking_fields.
fieldsobjectNoThe settings to write. For create: title, duration, event_type, status, location_settings. For update: whatever that section accepts — call get-event-types with event_id to see the current values first.
forcebooleanNodelete only. Delete even though bookings exist. Every booking on the event type goes with it — past, cancelled and upcoming — plus their activity history and payment records.
dry_runbooleanNoPreview any action without changing anything.
confirm_tokenstringNoFrom a dry run. Required for delete and for update on the availability and limits sections.
idempotency_keystringNoYour own id for this change. Retrying with the same key replays the first result instead of repeating the change.

Example call

json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "fluent-booking/manage-event-type",
    "arguments": {
      "action": "value"
    }
  }
}