The worksheet solution you mentioned (see the workbook attached to this KB article) is currently the best option, though it doesn't give you the dynamic updating capabilities you're looking for.
As an alternative, you can create a parameter for dashboard selection, which can be used to complete the URL in an action:
This isn't dynamic either, as you'd have to modify the parameter list to match the available dashboards and put descriptions in static text boxes. An external data source of URLs and descriptions may be the simpler and more flexible solution.
Thanks very much for your help. It's good to know that we were on the right track. The parameter example is also very useful.
Hopefully Tableau might put the ability to add in a table of contents / sitemap to Tableay Server in the future!