{"server":"io.github.Everyways/upsalt-booking","count":5,"tools":[{"name":"cancel-booking","title":"Cancel Booking","description":"Cancel an existing booking using the management token returned by create-booking. This action is irreversible; confirm with the guest before calling it.","input_schema":{"type":"object","required":["token"],"properties":{"token":{"type":"string","description":"The booking management token returned by create-booking."}}},"output_schema":null,"annotations":{"destructiveHint":true},"source":"probe","observed_at":"2026-10-20T05:24:23.906Z"},{"name":"create-booking","title":"Create Booking","description":"Create a booking for a company as a guest. Requires a date (YYYY/MM/DD), an hour and shift_id obtained from list-available-slots, and the guest contact details. On success, returns the reservation details including a token that can be used with get-booking-info and cancel-booking.","input_schema":{"type":"object","required":["company_id","date","hour","shift_id","adults","name","surname","email","phone"],"properties":{"city":{"type":"string","description":"Guest city."},"date":{"type":"string","description":"Booking date in YYYY/MM/DD format (e.g. 2026/07/20). Note the slashes."},"hour":{"type":"string","description":"Booking hour in HH:MM format, taken from list-available-slots."},"name":{"type":"string","description":"Guest first name."},"pets":{"type":"integer","description":"Number of pets."},"email":{"type":"string","description":"Guest email address. The booking confirmation and management token are sent here."},"optin":{"type":"integer","description":"Marketing opt-in flag (1 or 0)."},"phone":{"type":"string","description":"Guest phone number."},"vegan":{"type":"boolean","description":"Whether the party includes vegan guests."},"adults":{"type":"integer","description":"Number of adults."},"babies":{"type":"integer","description":"Number of babies."},"country":{"type":"string","description":"Guest country."},"message":{"type":"string","description":"Optional message for the business."},"surname":{"type":"string","description":"Guest last name."},"children":{"type":"integer","description":"Number of children."},"latitude":{"type":"number","description":"Guest latitude, if known."},"shift_id":{"type":"integer","description":"The shift id, taken from list-available-slots."},"highchair":{"type":"integer","description":"Number of highchairs."},"longitude":{"type":"number","description":"Guest longitude, if known."},"pushchair":{"type":"integer","description":"Number of pushchairs."},"company_id":{"type":"integer","description":"The company id, as returned by the find-company tool."},"vegetarian":{"type":"boolean","description":"Whether the party includes vegetarian guests."},"wheelchair":{"type":"integer","description":"Number of wheelchairs."},"gluten_free":{"type":"boolean","description":"Whether the party needs gluten-free options."},"guest_token":{"type":"string","description":"Existing guest token, if the guest has booked before."},"nuts_allergy":{"type":"boolean","description":"Whether the party has a nut allergy."}}},"output_schema":null,"annotations":{"destructiveHint":false},"source":"probe","observed_at":"2026-10-20T05:24:23.906Z"},{"name":"find-company","title":"Find Company","description":"Find a company by its slug and return its public profile: services, opening hours, and booking configuration. Use this first to obtain the company_id needed by the other tools.","input_schema":{"type":"object","required":["slug"],"properties":{"slug":{"type":"string","description":"The company slug, as found in its booking page URL."},"business_type":{"type":"string","description":"Optional business type filter."}}},"output_schema":null,"annotations":{"readOnlyHint":true},"source":"probe","observed_at":"2026-10-20T05:24:23.906Z"},{"name":"get-booking-info","title":"Get Booking Info","description":"Retrieve the details of an existing booking using the management token returned by create-booking.","input_schema":{"type":"object","required":["company_id","token"],"properties":{"token":{"type":"string","description":"The booking management token returned by create-booking."},"company_id":{"type":"integer","description":"The company id the booking belongs to."}}},"output_schema":null,"annotations":{"readOnlyHint":true},"source":"probe","observed_at":"2026-10-20T05:24:23.906Z"},{"name":"list-available-slots","title":"List Available Slots","description":"List the available booking slots for a company on a given date. Returns shifts and bookable hours; use the shift_id and hour when creating a booking.","input_schema":{"type":"object","required":["company_id","date"],"properties":{"date":{"type":"string","description":"The date to check, in YYYY-MM-DD format (e.g. 2026-07-20)."},"company_id":{"type":"integer","description":"The company id, as returned by the find-company tool."}}},"output_schema":null,"annotations":{"readOnlyHint":true},"source":"probe","observed_at":"2026-10-20T05:24:23.906Z"}],"next_cursor":null,"next_actions":[{"action":"get_connection","description":"Connection block to call these tools","href":"/v1/servers/io.github.Everyways%2Fupsalt-booking/connection?target=mcpServers","arguments":{"name":"io.github.Everyways/upsalt-booking","target":"mcpServers"}},{"action":"get_server","description":"Full descriptor with trust and connectability","href":"/v1/servers/io.github.Everyways%2Fupsalt-booking","arguments":{"name":"io.github.Everyways/upsalt-booking"}}]}