E3D has a kinematic coupling on their tool-changing motion platform now, right?
https://e3d-online.com/blog/2018/03/21/tool-changer-q The coupling gives 100%
repeatable alignment for each tool relative to the XY carriage. So you can record fixed XYZ offsets for each tool and get repeatable tool switching.
What I want to do is come up with a different kinematic coupling arrangement that ensures the nozzle tip is always centralized as well, so there's no XY offset to measure/record, only different Z heights. A Z height offset can be probed out with any kind of Zmin sensor that triggers off nozzle contact. (Piezo mount, FSR, nozzle hitting a microswitch, etc.) So if your tool changer coupling positively positions the nozzle's XY in relation to the coupling, you eliminate a ton of setup work for the tool changing system. In fact, you could probably make it plug-and-play: install any new hot end (or plotter pen, or drag knife, or...) and the system measures the Z offset itself and is ready to run.
A standard mill type cone-in-cone taper profile can do this, but that's not a great solution here, because of the need for high fab precision and complex automated drawbars or whatever. Drawbars would get in the way of the filament path, too.
My thinking for a first concept is to design a kinematic coupling that self-centers the coupling on a groove-mount or similar cylindrical point in the tool. Preload via magnets or whatever.

Groovemount diameter isn't quite right? Want to grab a dry erase marker? No problem, it'll accommodate different diameters via a slight rotation of the tool in relation to the carriage. All you should need is for the tool/nozzle tip to be centered in relation to the cylinder you're grabbing.
I think this should work. Might be missing something, I just thought of it. Depending on the fab precision of everything, you may still need a small offset calibration (like with a vernier scale dualstrusion test print) but it'll get you darn close right off the bat, which is worth something.