1st check ur o2 is working.
With a laptop/diagnostic tool, hold warm engine at 2k and the sensor should read up/down per 0.5s
Without laptop, try the paperclip in diagnostic port trick, start warm engine for diagnostic mode 2, hold at 2k n eng light representing o2 should blink on off per 0.5s
Next if u have nistune or any ecu mod is to check the low rpm low load regions of fuel map is enabling closed loop n using the o2
Finally the cats. My janspeed manifold and turbo eliminated the primary cat, leaving the second to do all the work but it doesn't get hot enough so both setups fail emission.
Only my stock exhaust manifold passes cos the primary cats gets hot enough near the engine to clean the gasses.
So every year I'd have to swap over to stock for MOT