Blender or CAD software for making a robot/character with swappable parts I would like to create a robot that is assembled from smaller, individual, and swappable parts. For example, the normal hands can be swapped with wolverine-like claws at the joint providing the same wrist rotation and mobility.

I understand that Blender is not as precise as actual CAD - Is blender actually useable for engineering?. However, I don't need extremely precision when different parts join. For example, in this SFV video - https://www.youtube.com/watch?v=grX4qILHIlU, Akuma has different hair styles and clothings, is Blender an appropriate tool for making characters with swappable parts?
Expanding a bit on Duarte Farrajot Ramos' comment above: if you want to engineer routinely, then there are more focussed tools than blender. For the purpose that you describe, blender might suit you fine.

I myself do use blender to prepare engineering models for simulations. Not needing some of the more advanced CAD features, blender turned out to be a practical and very cost effective tool for me with the added advantage that I can model and visualize results using the same tool.

When you want to do precision modelling there are a number of guides and tutorials available on how to tweak blender for that purpose:


Several relatively simple precision tips can be found in this answer: How to model effectively using exact measurements?
An older but very extensive tutorial can be found here: http://www.rab3d.com/tut_blen_precision_guide.php
blendermama has a nice collection of hints: http://blendermama.com/precision-work-in-blender.html
And there are some tutorials on youtube of course: https://www.youtube.com/watch?v=kOxN4CHeBPQ


There are also a number of addons that help: Edge Tools and Caliper from http://www.blender3darchitect.com/ (which also has great tutorials) as well as tinyCAD.