Extract two values from mqtt message(json type) and create a new mqtt with these two

Nice, I am happy to know.

Yes, that is correct.

Exactly, when we want to send messages via MQTT we need to create a topic and a payload. The topic creation in your specific use case is dynamic, based on the description field from the input messages. At the end of the day the flow is one of the simplest possible: just a switch node plus a change node.