Yes, you can do this now using transaction metadata, e.g. the sendwithmetadata API call, but retrieval is not as convenient as it should be. (For now your best workaround is to always send the data to the same address, then use importaddress on each node to make sure it can easily retrieve transactions sent to that address.)
But: we're working on a set of APIs to make MultiChain much better suited for this use case.