Currently we only send the metacardType name of the associated metacard. There should be a way to get the full attribute definitions of the metacardType.
An Optional extra step, allow it to be requested/excluded on demand since it will add a fairly large amount of (repetitive) data to the payload.
Something else to think about that will build on top of this is somehow identifying the metacardTypes with an absolute identifier (perhaps a hash) so that types could be only requested if the definition is not already known.