remoto relies on serializable responses from remote functions. If the return value is returning non-serializable values, then the error will be a traceback from the JSON module in the remote. This should try/except and attempt to craft a nicer error message if that is the case. Potentially with a str() representation of the object.
This is particularly problematic when trying to serialize bytes.