Developers & AI agents
RottoWatch is built to be used by AI agents and apps, not just people. We watch Rottnest Island accommodation availability around the clock and expose a clean interface so an agent can check availability and set up a cancellation watch on a user’s behalf.
MCP server
Streamable-HTTP MCP endpoint (works with Claude, ChatGPT, Cursor, and other MCP-capable agents):
https://www.rottowatch.com.au/api/mcpTools:
check_rottnest_availability— current availability for a stay (rooms, price, booking link); in peak periods it also returns the bookable fixed windows in apeakSlotsfieldlist_rottnest_room_types— the accommodation types we can monitorlist_rottnest_peak_slots— the fixed arrival/departure windows bookable in a peak period, with availabilitycreate_rottnest_watch— start monitoring (by email); we alert the user when availability appears
Discovery card: /.well-known/mcp/server-card.json
Connecting (setup)
- Add the MCP server URL above to your MCP-capable client (Claude, ChatGPT, Cursor, and similar).
- On connect you’ll be redirected to authorize with your RottoWatch account (OAuth 2.1). Sign in and approve — the four tools then appear in your client. Clients register automatically via Dynamic Client Registration, so there’s no client ID/secret to configure.
- Prefer not to use OAuth? Get a free API key with
POST /api/v1/keysand send it asAuthorization: Bearer rw_live_…instead.
REST API
Get a free API key (returned once):
curl -X POST https://www.rottowatch.com.au/api/v1/keysCheck availability for a stay:
curl "https://www.rottowatch.com.au/api/v1/availability?checkIn=2026-11-19&checkOut=2026-11-22&adults=2" \
-H "Authorization: Bearer rw_live_..."OpenAPI spec: /api/v1/openapi.json
Notes
- Free tier: 10 availability checks/day per key (creating a watch doesn’t count).
- To monitor dates over time, create a watch rather than polling — RottoWatch runs the durable checks and emails the user when something opens up.
- Availability reflects dates currently being tracked; for untracked dates the API returns
cached:false— create a watch to start monitoring them. - Peak periods (e.g. Dec–Jan) only allow fixed arrival/departure windowsper area — arbitrary dates can’t be booked. Use
list_rottnest_peak_slots(orGET /api/v1/peak-slots) to get the bookable windows + availability. - You book directly on StayRottnest; RottoWatch only finds and alerts.
Troubleshooting
- 401 / “Authentication required” — the tool needs auth. Complete the OAuth authorize step when prompted, or include a valid API key (
Authorization: Bearer rw_live_…). The 401 carries aWWW-Authenticateheader pointing at/.well-known/oauth-protected-resourceso OAuth clients can start the flow automatically. cached:falsein an availability result — those dates aren’t being tracked yet, so there’s nothing to report. Create a watch withcreate_rottnest_watchto start monitoring them.- Rate limited — availability checks are capped at 10/day per API key. Creating a watch doesn’t count against that cap; OAuth-connected users aren’t subject to the per-key daily limit.
- No rooms for peak dates — in peak periods (e.g. Dec–Jan) only fixed arrival/departure windows are bookable. Call
list_rottnest_peak_slotsfor the windows you can actually book. limitReachedon create_rottnest_watch — the user hit their plan’s watch limit. The response includes anupgrade_url; send them there to add more watches or faster checks.- Still stuck? Email support@rottowatch.com.au.