GPScript has the ability to load scale curves and then you can pass things through them.
I’ve never tried this but I suppose you could add a rig specific GPScript (new feature in 4.5) that responds to incoming midi messages from particular devices, processes them through a scale curve and reinfect them.
I know you didn’t want to use scripting but one of main reasons we developed GPScript was so that people could implement functionality not (yet) available in the GUI.