"Shark Attack" is excellent.
There is a lovely, fairly new restaurant/beach bar on PSV which is mid price range and in a superb location. Yachties are welcome.
I believe that one of the best restaurants in the Grenadines is in Petite Martinique - The Palm Beach Restaurant & Bar. I first ate there 30 years ago. It's family-run, very friendly, the food is first-rate and the prices are extremely reasonable. What's more, if you are anchored at PSV, you can call them on the VHF and they will send a free water taxi over to pick you up and then drop you back at the yacht afterwards.