The only data available for notification substitution is the actual data for the object of the notification (incident, task, datatable, etc) and the properties of it's parent (note->task->incident, artifact->incident).
Therefore it is not possible to get workflow properties, nor is it possible to get a full list of notes.
In this case, it sounds like you are creating a notification for an incident close. Therefore, only the incident properties are available. You mention description, so it would be ${incident.description}. If you were interested in custom incident properties it would be ${incident.properties.custom_boolean} for example.
Ben
------------------------------
Ben Lurie
------------------------------