Skip to content

Connect AI agents (MCP)

The platform speaks the Model Context Protocol natively. Any MCP client — Claude Code, Claude Desktop, IDE agents, your own bots — can query availability, price stays and read bookings with live data, authenticated by the same API key and scopes as the REST API.

  • Endpoint: https://api.myrentalcalendar.com/mcp
  • Transport: Streamable HTTP, stateless (plain JSON responses, no SSE session)
  • Auth: Authorization: Bearer hr_live_…
Terminal window
claude mcp add --transport http stayos https://api.myrentalcalendar.com/mcp \
--header "Authorization: Bearer hr_live_XXXXXXXX"
{
"mcpServers": {
"stayos": {
"type": "http",
"url": "https://api.myrentalcalendar.com/mcp",
"headers": { "Authorization": "Bearer hr_live_XXXXXXXX" }
}
}
}

Only tools covered by the key’s scopes are advertised — a read:units-only key exposes nothing but list_units.

ToolScopeWhat it does
list_unitsread:unitsAll units with slug, capacity, base price
get_availabilityread:availabilityBlocked nights of one unit in a range
quote_stayread:ratesFull price quote incl. fees, taxes, promotions + availability
list_bookingsread:bookingsBooking rows (no guest personal data)

All tools are read-only; there is deliberately no tool that creates or modifies bookings. Argument mistakes come back as readable tool errors (for example the effective minimum stay), so agents can correct themselves.

MCP is JSON-RPC over HTTP — you can smoke-test the endpoint without any client:

Terminal window
curl -s https://api.myrentalcalendar.com/mcp \
-H "Authorization: Bearer $STAYOS_KEY" -H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'