Feed the message from the MQTT node into a debug node and post what it shows.
If it is just a number but as a string, so for example the debug may show msg.payload as String "12.3" then if in the MQTT node you tell it to output a Parsed JSON object then it will parse that string and convert it to a number. Then the debug node should show it as a number.
Excellent. It works because a string containing a number is valid JSON, so the node parses it and converts it into a javascript object, which in this case is just a number.