{"name":"fr.duplex77/duplex-77-availability","title":"Duplex 77 availability","description":"Live availability of Duplex 77, a holiday apartment in the centre of Céret — read-only, no authentication.","version":"0.2.0","websiteUrl":"https://duplex77.fr","serverInfo":{"name":"Duplex 77 availability","version":"0.2.0"},"transport":{"type":"streamable-http","endpoint":"https://mcp.duplex77.fr/mcp"},"remotes":[{"type":"streamable-http","url":"https://mcp.duplex77.fr/mcp","authentication":{"type":"none"}}],"capabilities":{"tools":{"listChanged":false},"resources":false,"prompts":false},"tools":[{"name":"list_units","description":"The bookable unit of Duplex 77 (one unit, `duplex`): id, name, description, sleeps, bedrooms, and blockedBy."},{"name":"check_availability","description":"Is this unit free for the whole stay [checkin, checkout)? Returns available, nights, and the blocked ranges that conflict (empty when available)."},{"name":"get_availability","description":"Blocked (unavailable) date ranges per unit within [from, to). Each range is half-open [start, end): start is the first blocked night, end is the first free night again. Defaults: from = today (Europe/Paris), to = from + 365 days; at most 731 days."},{"name":"find_free_stays","description":"The first 20 possible stays of exactly `nights` consecutive free nights for a unit within [from, to), one per possible check-in date, in date order. Also returns every free period long enough for such a stay. A stay may start on another stay's checkout day. Defaults: from = today (Europe/Paris), to = from + 365 days; at most 731 days."}],"authentication":{"type":"none"}}