Sounds like you just need to stack parameters and construct a merged distribution. But there is no interface to extract distribution parameters, except in an ad-hoc way:
{name: getattr(distr, name) for name in distr.arg_constraints.keys()}
stack these by key and construct a merged distr.object in a generic way, e.g. distr[0].__class__(**kwargs)