Message Center is an application designed for managing trigger messages (invoices, order Confirmations, password changes or website account creations for instance). It is intended to send the transactional message in real time. You need not check for marketing consent before sending the emails or message out as you are not carrying any promotional or marketing emails with MC(most of the time). Creating a workflow to send emails from marketing server is not ideal as this server is not available 24x7, unlike Message center server which is highly available and scalable to deliver your email in real time. If you start sending the email from your marketing server for all transactions, then your marketing server will be slow, and it will impact your IP reputation. So technically you can send the email, but it's not the way to implement it.
If I want to send a real time marketing content based on certain profile attributes like (say) send special offer for high value customer who showed interest in a premium product in the site. Can I use the external event in combination with real time events? Overall approach I'm looking for is, invoke a workflow that verifies the qualification based on business rules and sends promotional email in real time to customers who qualify. (How) can I use external event activity for this use case?