Other possible options;
If the 'tool' part geometry is suitable - you can
* circular pattern it within the Boolean operation
* insert more than one instance of the tool part and constrain within the Boolean operation
If tool geometry needs to be mirrored
* mirror in the part as you mentioned
* use configurations and part scale/mirror in the part to give 'handed' configs - then select the appropriate config for each instance within the Boolean operation.