Have you considered using a memory hard PoW instead of a computation bound one?
That said, there are protections within mCaptcha to protect against ASICS(PoW result has expiry and variable difficulty scaling), but they are yet to be validated. If they should prove to be insufficient, then I'll try a different approach with memory-heavy algorithms.
disclosure: author of mcaptcha