Thx so much guys for the great answers
Kaushal Modi: cousel-org-tag is fantastic and works very well for me
John: i did try helm with (mapcar 'car 'org-tag-persistent-alist ) but it gave me an error:
cons: Wrong type argument: sequencep, org-tag-persistent-alist
the code i used:
(defun helm-tagger ()
(interactive)
(helm
:sources
`((name . "HELM tag setter")
(candidates . ,(mapcar 'car 'org-tag-persistent-alist ))
(action . (lambda (candidate)
(org-set-tags-to (helm-marked-candidates)))))))
to be honest cousel-org-tag works really well but if anyone else is interested in the helm part ive posted the error
kind regards
Z