Skip to content

Amelia

New in 3.19.0 (Pro). Two dispatcher tools work with Amelia 2.4 or later (Amelia Lite is enough):

ToolDefaultPurpose
amelia-readOnThe setup, categories, services, employees, customers, appointments, free slots, events and attendees (14 operations)
amelia-writeOffSet up services, employees and customers, book and manage appointments and events (25 operations)

Enable the write tool under Tools > Plugins > Amelia. EMCP runs Amelia’s own controllers, the ones its admin uses, so Amelia checks permissions, working hours and slots. Amelia administrators and managers work on everything Amelia lets them; an Amelia employee on their own appointments and profile; Amelia customers are refused.

  • Every time is site-local Y-m-d H:i, in and out. Amelia stores UTC; EMCP converts both ways, across daylight-saving changes too.
  • Durations, buffers and slot lengths are minutes. Prices are numbers.
  • get-setup: version, edition (Lite or premium), time zone, currency, default appointment status, slot length, booking window, whether a mail sender is configured (without one Amelia sends no email), and the write operations you may run.
  • list-services / get-service, list-employees / get-employee (the working week and days off), list-customers / get-customer, list-categories.
  • list-appointments (default today to 30 days), get-appointment (the appointment with its bookings, and its version); list-event-bookings gives each event booking its own version.
  • get-availability: free start times per day for a service, computed by Amelia from working hours, breaks, days off and bookings.
  • list-events / get-event (periods, places left), list-event-bookings.

Every object answers a version; pass it to every write on that object. A different version is a conflict; force: true writes anyway.

  1. create-category, then create-employee (first_name, last_name, email, optional phone, description, services).
  2. set-working-hours for each employee: the whole week, [{day, start, end, breaks}]; a day left out is closed. Without working hours an employee has no free slots and bookings answer time_slot_unavailable. set-days-off replaces the days off.
  3. create-service (name, category_id, duration, price, employees, optionally with an employee’s own price).
  4. create-customer. An email another employee or customer has answers email_exists.

Amelia Lite stores no buffer times, deposits, hidden services, capacities above 1 or event tags, and schedules one employee only; EMCP answers not_in_lite naming the fields instead of writing what Lite would drop.

  • create-appointment: service_id, employee_id, customer_id, start, optional persons, internal_notes, status. A taken slot or a time outside the working hours is time_slot_unavailable. A second customer in a group service’s slot joins that appointment (merged: true).
  • reschedule-appointment, set-appointment-status (approved, pending, canceled, rejected), update-appointment, set-booking-status.
  • Payments are created by Amelia as for its admin; EMCP never changes payments.
  • notify defaults to false: EMCP holds every message to customers through Amelia’s own mail filter. Pass notify: true to let Amelia email the customer.
  • Amelia still emails the employee when a mail sender is configured.
  • Every answer lists notified: what Amelia actually sent during the call. Undo never sends anything.
  • create-event with name and periods; update-event changes only what you pass (periods replaces the list: keep a period’s id).
  • set-event-status: open or cancelled.
  • add-event-booking: EMCP checks the places left first (event_full), because Amelia does not for back-end bookings.

delete-category, delete-service, delete-employee and delete-customer need confirm: true and only work when nothing uses them, past bookings included (in_use). Hide services and employees instead. Appointments and events are never deleted: cancel them.

From our test run with the fictional Larkspur Kitchen School, recorded over a real MCP connection with Amelia’s free edition. The Amelia integration page shows every call the assistant made.

Amelia admin calendar for 12 to 18 October 2026 with two Private cooking lesson appointments, on Wednesday at 10 and Friday at 3 pm.

Both lessons on Amelia’s own calendar.

Amelia's step booking form on the Book a lesson page: a Date and Time calendar for October 2026 with Tuesdays to Saturdays available.

Amelia’s booking form, open on the working days the assistant set.

Every write is one History entry and can be undone there; undo puts Amelia’s rows back with their ids and notifies nobody. It is refused when the object changed since (conflict, force overrides), or always when later real work depends on it: bookings made since, a payment that moved on, a slot taken since, an event with no places left, an email someone else took, or a link that is gone.