DSL: Add `MessageProducer` support