class Foo(metaclass=Meta):
    pass

def __init__(self, *args, **kw):
    print('init: %r %r %r' % (self, args, kw))
f = Foo('bar')
print('main: %r' % f)
Using the __call__ method of a metaclass instead of __new__?