Difícil cuestión. En el contexto del tiempo meteorológico, lo más común, como apunta Viviane, es decir "hace calor", simplemente. "Hoy hace calor" puede, por lo tanto, equivaler a "today it's warm". But a simple gesture with your hand, (using it as if it was a fan) may change the sense of that "hoy hace calor" into "today it's quite hot".
If you want to make it clearer, you should add something like, mucho, bastante, and it means it's unpleasant: "Buf! Hoy hace mucho calor".
You could also say (for "it's warm") "hoy está templado" (that would be much clearer, but it's not a common expression, though, at least in Spain. In countries like Chile, they use the expression "está tibio/tibiecito", which means "it's warm". This expression is not used in Spain (as far as I know).
Unlike Viviana's opinion, I don't think "hace buen tiempo" to be a good translation for "it's warm", because it can be warm and cloudy or warm and wet, for example, and in that case, we wouldn't say "hace buen tiempo", which means "the weather is nice".