It seems the entire discussion here is based on a misunderstanding, the vast difference between what MI5 calls an "agent" and what the public understands when we hear "an MI5 agent", and thus misses the point by about a mile?
There's an interesting debate to be had about the questions posed by the article, it's just not what's being discussed here right now. For example, in Germany, an attempt to have the far-right ultra-nationalist NPD banned for being anti-constitutional in 2003 was rejected by the Federal Constitutional Court because a large number of agents (called V-Männer in German) were active in the party leadership. This raised the question of whether some of the evidence against the party might actually be influenced by agents of German secret services. Since the secret services did not want to fully disclose their agents' identities and activities, the court found the case to be impossible to decide.