MTA Threading model

MTA objects can be accessed from any thread directly as the object is responsible for synchronization.Why can not an MTA object can be accessed from STA directly?Why we need to marshall MTA object pointer when we need to access it from STA?
If we use CoCreateFreeThreadedMarshaler() we can get direct interface pointer.Why doesn’t COM standard marshaller do
that for MTA interface pointers?