Apparently it prints nothing at all, not even a newline. Try this instead.
mpc current | awk '{ print } END { if (!NR) print "not playing" }'
This prints any output. If you don't want that, take out the { print }.
awk processes each line in turn, and then at EOF performs any END block. If there were no input lines, there will be an EOF right at the start, the variable NR will be zero, and so the END block will print the placeholder text. (I originally had a dedicated variable for this, but the built-in line number variable NR, as used in Bob Vale's answer, is decidedly more elegant. It is incremented for each input line that awk reads.)