How tag emails in Apple Mail?
This is work around, but it works for me, and it travels through all MacOS versions from I guess Mountain Lion (not sure when, made it long time ago). Not sure if it is still relevant, but since I found question without answer in search for the same, decided to contribute. 
Here what I did: with automator create new service for Mail app, "Get Selected mail message". In code I have put:

on run {input, parameters}
  set theSource to {}
  tell application "Mail"
    repeat with msg in input
      set t_myFolder to POSIX path of (account directory of account of mailbox of msg as rich text)
      set len to length of t_myFolder
      set myFolder to rich text 1 thru (len - 1) of t_myFolder
      set messageId to (get id of msg as rich text)
      set myfile to (do shell script "find " &amp; quoted form of myFolder &amp; " -name \"" &amp; messageId &amp; "*.emlx\"") as rich text
      try
        set myalias to (POSIX file myfile) as alias
        if myalias is not missing value then
          tell application "Finder"
            activate
            reveal myalias
          end tell
        end if
      on error
        set debugInfo to "messageID: " &amp; messageId &amp; "
        myFolder: " &amp; myFolder &amp; "
" &amp; "myFile: " &amp; myfile
        display alert "Error ocured. Some Debug info bellow:
        " &amp; debugInfo
        return
      end try
    end repeat
  end tell
end run


What it does - is finds mail message file in Finder and selects it. Then you can add tags to that particular file. After only thing remains is to assign a shortcut in the services (under keyboard).

Choose Service receives selected, "files or folders" in "Mail.app" when creating your Automator Service.

Regards
Justas