I like where you're going with this idea.
First, Weight and Frequency, I'm pretty sure they do the same thing in Principal components. Weigh can use fractions where frequency uses integers.
It looks like a lot of the functionality you're thinking of is pretty easy to script.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Tiretread.jmp" );
obj = dt<<Multivariate(
Y( :ABRASION, :MODULUS, :ELONG, :HARDNESS ),
Estimation Method( "Robust" )
);
obj << T Square( 1 , "Save T Square");
obj<<Close Window;
r=dt << Select Where( :name("T Square") >= Col Quantile( :name("T Square"), 0.9 ) );
r<<exclude;
JMP Systems Engineer, Health and Life Sciences (Pharma)