So I have currently modified the scale tags in a few of the female citizen models. https://github.com/0ad/0ad/blob/master/binaries/data/mods/public/art/animation/biped/new/fem_walk_relax.dae https://github.com/0ad/0ad/blob/master/binaries/data/mods/public/art/meshes/skeletal/new/f_dress.dae
I have played around with the values (eg. all being the same value, or trying different values). The snippets are below.
fem_walk_relax.dae
<node id="Armature" name="Armature" type="NODE">
...
<scale sid="scale">0.75 0.01 0.5</scale>
<node id="m_armor_tunic_short" name="m_armor_tunic_short" type="NODE">
...
<scale sid="scale">0.1 0.01 0.5</scale>
f_dress.dae:
<node id="f_dress" name="f_dress" type="NODE">
...
<scale sid="scale">0.1 0.25 0.5</scale>
<node id="Armature" name="Armature" type="NODE">
...
<scale sid="scale">0.1 0.25 0.5</scale>
As far as a script goes, it simply multiplies every number in the "mesh-positions-array" with the scaling factor and then saves the file again.
This may be the wrong way to go about it, however, it has worked with static meshes.