As Spruce alludes to, quality paint does not need a top coat. Should, for some reason, you desire to top coat, be aware that all oil based varnishes/urethanes have a slight amber tone which will pull off the color of the underlying paint. However, water based urethanes are very clear. You can use it over an oil based or latex paint. If the underlying paint is glossy, dull it down with fine sandpaper to assure adhesion.

Lessons learned the hard way: years ago, I put a blue base coat and glaze finish over some dark 1960's paneling. As a protective top coat, I made the mistake of using oil based varnish. The next morning, that blue glaze had a very greenish look to it, due to the yellow tint of the varnish! :(
I had to completely redo the blue base coat/glaze and then I top coated with a clear acrylic varnish.
Live and learn!