Make the metaclass a metaclass trait so it can be used via: use Moose -traits => 'MetaDescription' Rather than insisting on being the only metaclass.