What problem does it solve? Managing the bespoke everjust_appointment Odoo module requires knowing its custom schema, lifecycle methods, and pitfalls — it shares model names with Odoo's Enterprise Appointments but has a completely different API, and mistakes like writing state directly or hand-creating calendar events silently break bookings. ## Core Features & Use Cases - Configure bookable services: Create appointment.type records with duration, publish flag, booking windows, staff, and CRM-lead toggle, plus weekly appointment.slot availability windows. - Manage the booking lifecycle: Create, confirm, reschedule, cancel, and inspect appointment.booking records through action_confirm/action_cancel/action_reset_draft, which own the derived calendar event, CRM lead, and confirmation email. - Diagnose availability issues: Determine why the public /appointment page shows no slots — unpublished type, missing weekday slot, min/max schedule window, or staff conflicts. - Use Case: A tenant asks you to set up a 1-hour on-site estimate booking page, Mon–Fri 9–5, that creates a CRM lead per booking. You create the type and slots via the ORM, then verify a test booking confirms with event, lead, and email. ## Quick Start Ask the agent to create a published appointment type with weekday slots on the target tenant DB, then create and confirm a test booking through the Odoo MCP.