Ok. I have an Automator Service that appends individual tag names to Finder selected files. Here is the before and after Finder list view:


You select the individual files in the Finder, and then right-click to access the Services menu from the secondary menu. I named this Service: Append Tag Names. I do not attempt to process files that have multiple "." in the filename.
One Automator Library action: Utilities : Run AppleScript. In Sierra or later, Run AppleScript is in the Automator library.
- Dock : Launchpad : Other : (click Automator).
- New : Service and click Choose.
- Library : Utility : Run AppleScript. Drag/Drop to larger work flow window.
- Settings:

- Remove all boilerplate text in the Run AppleScript window, and replace with copy/paste of source code in A
- Click the hammer icon in the Run AppleScript action to compile copy/paste content from 3b above
- Automator File menu : Save... Append Tag Names (no extension, and name is your choice)
- Quit Automator.
- Select target media files, right-click, and Service menu : Append Tag Names
Code A (copy/paste all content in this scrollable window)
use framework "Foundation" use AppleScript version "2.4" -- Yosemite or later use scripting additions on run {input, parameters} tell application "Finder" activate set media_selected to (selection as alias list) repeat with anItem in media_selected set tagnames to my get_tagnames(POSIX path of anItem) if not tagnames = {""} then set newname to my append_tagnames(anItem, tagnames) if not newname is false then tell application "Finder" to set name of anItem to newname else log anItem -- serve as a faux continue statement end if else log anItem end if end repeat end tell return input end run on get_tagnames(theFile) -- get the names of any tags assigned to theFile -- return a list of these tag names set NSURLTagNamesKey to {"NSURLTagNamesKey"} set metadict to current application's NSDictionary's dictionary set fileURL to current application's NSURL's fileURLWithPath:theFile set metadict to fileURL's resourceValuesForKeys:NSURLTagNamesKey |error|:(missing value) if not metadict = {""} then return metadict's NSURLTagNamesKey as list end if return metadict as list end get_tagnames on append_tagnames(theFile, tags) set DELIM to {space, "."} tell application "Finder" set {TID, AppleScript's text item delimiters} to {AppleScript's text item delimiters, DELIM} set appendage to space & (tags as text) -- string of white-space punctuated tagnames -- split filename and extension to elements of list. Only works for one "." in filename set file_parts to text items of (name of theFile as text) -- guard agains multiple dots in filenames if (count of file_parts) > 2 then return false as boolean -- filename has multiple "." set AppleScript's text item delimiters to TID set newname to (item 1 of file_parts) & appendage & "." & (rest of file_parts) end tell return newname end append_tagnames