{"ok":true,"site":{"host":"attendly-webmcp.pages.dev","url":"https://attendly-webmcp.pages.dev/","type":"live","desc":"Explore Attendly events, bookings, check-ins and event operations.","tools":[{"name":"search_public_events","kind":"answer","impl":"imperative","description":"Search published events on the current public page. With no dates it returns upcoming events for the next six months. An optional free-text query matches event, organisation, venue and category names. Suitability matches use only organiser-authored audience and age metadata.","title":"Search public events","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"query":{"type":"string","maxLength":80,"description":"Optional free-text filter matched against event name, organisation name, venue and category, for example \"Willowbrook\"."},"fromDate":{"type":"string","format":"date","description":"Optional inclusive search start date in YYYY-MM-DD format. Defaults to today."},"toDate":{"type":"string","format":"date","description":"Optional inclusive search end date, no more than six calendar months after fromDate. Defaults to six months after fromDate."},"audience":{"type":"string","enum":["adults","all-ages","children","families"],"description":"Optional audience filter matched only against organiser-authored event metadata."},"age":{"type":"integer","minimum":0,"maximum":17,"description":"Optional child age matched only when the organiser supplied a numeric age range."}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_public_event_details","kind":"answer","impl":"imperative","description":"Read current public details, organiser-authored suitability, availability and free-booking rules for an event on the current page. Private attendee and organiser records are never returned.","title":"Get public event details","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"eventId":{"type":"string","enum":["evt_autumn_fair","evt_online_safety","evt_reception_welcome","evt_quiz_night","evt_winter_market","evt_uniform_swap","evt_harvest_lunch","evt_toddler_music","evt_carol_evening","evt_print_workshop","evt_folk_session","evt_venue_open_day","evt_coding_club","evt_family_cookalong","evt_mentor_intro","evt_family_sports","evt_coach_workshop","evt_winter_walk"],"description":"A stable published event identifier returned by search_public_events on the current page."}},"required":["eventId"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"create_free_booking_draft","kind":"transact","impl":"imperative","description":"Prepare and display a non-binding free-ticket booking draft for review. Only adult and child quantities plus synthetic guardian contact are accepted; no child identity or health data is accepted.","title":"Create free booking draft","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"eventId":{"type":"string","enum":["evt_autumn_fair","evt_online_safety","evt_reception_welcome","evt_quiz_night","evt_winter_market","evt_uniform_swap","evt_harvest_lunch","evt_toddler_music","evt_carol_evening","evt_print_workshop","evt_folk_session","evt_venue_open_day","evt_coding_club","evt_family_cookalong","evt_mentor_intro","evt_family_sports","evt_coach_workshop","evt_winter_walk"],"description":"A published free event identifier returned by search_public_events."},"adultTickets":{"type":"integer","minimum":0,"maximum":6,"description":"Number of adult or guardian tickets. Include at least one when child tickets are requested."},"childTickets":{"type":"integer","minimum":0,"maximum":5,"description":"Number of child tickets. Child names, dates of birth, school records and health details are not accepted."},"guardianName":{"type":"string","minLength":1,"description":"Synthetic adult or guardian contact name for this demonstration."},"guardianEmail":{"type":"string","format":"email","description":"Synthetic adult or guardian email address for this demonstration."}},"required":["eventId","adultTickets","childTickets","guardianName","guardianEmail"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"confirm_free_booking","kind":"transact","impl":"imperative","description":"Create exactly one free booking from the matching draft visible on the page and return the same booking reference the page displays.","title":"Confirm free booking","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"draftId":{"type":"string","minLength":1,"description":"The active draft identifier returned by create_free_booking_draft."},"idempotencyKey":{"type":"string","minLength":1,"maxLength":100,"description":"A stable unique key for this confirmation attempt so retries cannot duplicate the booking."}},"required":["draftId","idempotencyKey"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"category":"Travel & Events","favicon":"/favicons/attendly-webmcp.pages.dev.png","apiSurface":"spec","toolCount":4}}