Translation:The sister is in the city, but the brother is at home.
Note: urbe is the ablative form of urbs (3rd declension) meaning city. In Latin, nouns are declined for case - different declensions of nouns are declined in different ways. When the ablative case is used after the preposition 'in', the resulting meaning is to be in somewhere. Domi is the locative form of domus (2nd declension). The locative form is a very rare form in Latin, and only a few words, such as domus, employ it. It has the same meaning as the aforementioned ablative construction, namely 'in/at'.
Only optional in American English! "At home" is used by English speakers of English.
I agree that "the brother is home" should be accepted along with "the brother is at home."
Should "sister is in the city but brother is at home" be incorrect? Are we always supposed to put "the" before every noun?
In this case, I think that's wrong. "Sister is in the city..." in English is short for "My sister is in the city...", so I'd have expected something like "Soror mea in urbe (est)..." in the Latin if that's what they'd meant.
More generally, yes, you'll often have to add "the" or "a(n)". Latin is a synthetic language (fewer words in a sentence, but more forms of each word) while English is an analytic language (fewer word forms, but more words in a sentence), so you'll almost always have to add more words in the English translation to capture the sense of the Latin. That will be the case especially when they course gets extended to the more-advanced uses of the dative and ablative (you're already seeing some examples, e.g. when you have to translate "Romae" as "in Rome").
I typed "The sister is in the city, but the brother is at home" and it got marked as incorrect, it looks like the only difference between my answer and the correct one is my omission of the full stop. The report button didn't give me an appropriate choice, so I'm putting this in discussion instead