I put a metal primer on my metal doors then I used a solid stain. It turned out to look good but it is very dull. Is there a finish I can put on top?
Well, using a solid stain was a no-no. A stain must penetrate into a surface in order to last and the metal won't allow this. You could put a spar varnish over the stain for protection. I like McCloskey's Man-O-War spar varnish with a satin sheen.
Another option is simply prime over the stain with a good fast drying oil based primer, Zinsser Cover Stain, then repaint with a good 100% acrylic paint with a satin or semi-gloss sheen.