{"protocolVersion":"2024-11-05","name":"Álomvilág szépségszalon","description":"Booking system for Álomvilág szépségszalon Székelyudvarhely","resources":[{"uri":"appointments://services","name":"Available Services","description":"MINDIG nézd meg a szolgáltatásokat az első kérésnél.","x-ucp-capability":"appointment.booking"},{"uri":"appointments://availability","name":"Available Time Slots","description":"Nézd meg a szabad helyeket egy adott napra.","x-ucp-capability":"appointment.booking"}],"tools":[{"name":"get_salon_services","description":"Lists all beauty salon services with names (Hungarian/Romanian) and prices in RON. ALWAYS call this first to know what services are available for booking.","x-ucp-capability":"appointment.booking","inputSchema":{"type":"object","properties":{},"required":[]}},{"name":"get_available_slots","description":"MANDATORY before booking! Returns available 30-minute time slots for a specific date. Checks business hours (Mon-Fri 10:00-17:00, Sat 10:00-13:00, closed Sunday) and existing bookings. AI can only book from tomorrow onwards (not same-day).","x-ucp-capability":"appointment.booking","inputSchema":{"type":"object","properties":{"date":{"type":"string","description":"Date to check in YYYY-MM-DD or YYYY.MM.DD format. Must be a future date (tomorrow or later).","pattern":"^\\d{4}[-.]\\d{2}[-.]\\d{2}$"}},"required":["date"]}},{"name":"book_appointment","description":"Creates a new salon booking and sends confirmation email. CRITICAL WORKFLOW: 1) Call get_available_slots first to verify slot availability. 2) Present all booking details to user and get explicit confirmation. 3) Only then call this tool.","x-ucp-capability":"appointment.booking","inputSchema":{"type":"object","properties":{"name":{"type":"string","description":"Client's full name","example":"Kiss János"},"phone":{"type":"string","description":"Mandatory international format starting with + (e.g., +40750123456)","pattern":"^\\+\\d{10,15}$","example":"+40750103615"},"email":{"type":"string","format":"email","description":"Optional email address"},"service":{"type":"string","description":"Service name (must match exactly from get_salon_services)"},"message":{"type":"string","description":"Optional additional notes or special requests"},"date":{"type":"string","description":"Booking date in YYYY-MM-DD format (must be tomorrow or later)","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"time":{"type":"string","description":"Time slot in HH:mm format (must be from get_available_slots response)","pattern":"^\\d{2}:\\d{2}$"},"idempotencyKey":{"type":"string","description":"Optional unique key to prevent duplicate bookings"}},"required":["name","phone","service","date","time"]}},{"name":"get_booking_status","description":"Check status of a booking by ID.","x-ucp-capability":"appointment.order_management","inputSchema":{"type":"object","properties":{"bookingId":{"type":"string"}},"required":["bookingId"]}},{"name":"cancel_appointment","description":"Cancel an existing booking by ID.","x-ucp-capability":"appointment.order_management","inputSchema":{"type":"object","properties":{"bookingId":{"type":"string"}},"required":["bookingId"]}},{"name":"reschedule_appointment","description":"Update an existing booking's time/date.","x-ucp-capability":"appointment.order_management","inputSchema":{"type":"object","properties":{"bookingId":{"type":"string"},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"time":{"type":"string","pattern":"^\\d{2}:\\d{2}$"}},"required":["bookingId","date","time"]}}]}