Non-working example, that errors on 'has baz' not seeing meta-attribute 'foo'.
package My::MetaAttribute::Role; use Moose::Role; has foo => ( is => 'ro', isa =>'Str', default=>'bar', required => 1 ); package My::MetaClass::Role; use Moose::Role; sub get_foo_from { $_->get_attribute( $_ )->foo(); } package MyClass; use Moose; use Moose::Exporter; Moose::Exporter->setup_import_methods( also => 'Moose' , class_metaroles => { attribute => ['My::MetaAttribute::Role'], class => ['My::MetaClass::Role'], } ); package MyClass2; use Moose; use MyClass; has 'baz' => ( is => 'ro', isa => 'Str', foo => 'foo-foo' ) ; I think Moose::Exporter may not be working as advertised, when you imbed class_metaroles in to the 'setup_import_methods' method. Thanks Kindly, Chris