Should they come directly from the store of OTP key material, or should they be entered from memory by the user (via a password then a key derivation function)?
Depends on what the security goals are. If you are satisfied with computational-complexity security (that is, with the assumption that the adversary is not able to amass sufficient computational power to break the system), then entering a password from memory is fine.
On the other hand, the fact that you're using OTP for privacy might indicate that your security goals might be a tad higher than that; if so, then using some of the bits from the one-time-pad would make sense (and is generally fairly cheap, as there are informationally secure MACs, such as the One-Time MAC on the page you cited [1], that require a fixed number of secret bits per message (compared to the 'number of secret bits depends on the message length' that privacy requires).
[1]: BTW: the description they give on the page is missing a few details, for example, how leading 0 message blocks are treated. It might be easier to take the core of either Poly1305 or GMAC (the authentication part of GCM), and use OTP bits rather than the output of ChaCha20 or AES - those constructions have the details worked out.