How do you differentiate bad/mean from (visually) ugly? Context only? Then "ugly" should be accepted as a correct solution, too.
Hi there, "Anh ấy là người xấu" in this sentence means he has a bad personality, not from visually. I suggest that you mean "He is ugly" or "He is an ugly man", right? In Vietnamese, they will say "Anh ấy xấu (or xấu xí)" or "Anh ấy là một người đàn ông xấu (or xấu xí)" (from his appearance).