Actually the actions you want to do are actions defined in the “style”. You can create new tags there, change existing ones, add tags when not yet existing, overwrite values, etc.
Some examples:
In my map for skiing, the relations file contains e.g.
piste:grooming=classic { apply { set loipetype=classic } }
That means: when the relation contains a piste:grooming tag, and that tag has the value classic, I add my tag loipetype=classic (there is no loipetype defined elsewhere, I created it in my style files for processing here only).
In the lines file, that gets translated to a custom line:
loipetype=classic & loipediff=easy [0x10f01 resolution 16]

In a different map, I show dirt roads with a different style than paved roads:
highway=unsurfaced {add tracktype=normal_track;}
highway=* & (surface=gravel | surface=pebblestone | surface=unpaved) { add tracktype=normal_track }
highway=* & (surface=compacted ) { add tracktype=normal_track }
highway=* & (surface=surface=grass | surface=ground | surface=sand ) { add tracktype=bad_track }
tracktype=grade2 {set tracktype=normal_track }
tracktype=grade3 {set tracktype=normal_track }
tracktype=grade4 {set tracktype=bad_track }
tracktype=grade5 {set tracktype=bad_track }
highway=major & tracktype=* & tracktype!=grade1 { set highway=major_dirt }
highway=minor & tracktype=* & tracktype!=grade1 { set highway=minor_dirt }
highway=major [0x03 road_class=3 road_speed=4 resolution 16]
highway=major_dirt [0x11 road_class=1 road_speed=2 resolution 18]
highway=minor [0x04 road_class=2 road_speed=3 resolution 18]
highway=minor_dirt [0x12 road_class=0 road_speed=1 resolution 20]

My conclusion: you do not need extra software, just get used to the rules of the mkgmap style files, and adjust your TYP file with e.g. MapTk.