There are two problems here: first, how to write an action that displays this data, and second how to get the data you want to display.
The first problem of writing an action to do this could be solved by building a simple SSRS report that took a string as a parameter, then displayed the value of the string in the report. It's easy then to open the SSRS report using an SSAS action and to
pass the information you want to display from MDX to the parameter for that report.
As far as the second problem of displaying the data you want, if you just wanted to display a list of dimensions and levels you could simply call a DMV like mdschema_dimensions like this:
select * from $system.mdschema_dimensions
(you can get a full list of schema rowsets by running select * from $system.discover_schema_rowsets). However I guess you really want to find the currentmember on every hierarchy. It's not easy to do this in MDX at all, surprisingly. I blogged about this
problem a long time ago here (note it uses AS2K MDX):
http://cwebbbi.wordpress.com/2005/01/28/finding-the-currentmember-on-all-dimensions/
http://cwebbbi.wordpress.com/2005/01/31/finding-the-currentmember-on-all-dimensions-take2/
http://cwebbbi.wordpress.com/2005/03/15/finding-the-currentmember-on-all-dimensions-take3/
There's also a custom MDX function that does what I think you want in the Analysis Services Stored Procedure Project but even then it still has the limitation that it doesn't work with sets in the Where clause:
http://asstoredprocedures.codeplex.com/wikipage?title=FindCurrentMembers&referringTitle=Home
I think using the custom function will be your best bet.
HTH,
Chris
Blog: http://cwebbbi.wordpress.com/ Consultancy: http://www.crossjoin.co.uk/