I didn't recall any restaurants within walking distance from the beach, although, they do sell food right there...Depending on how many ships are in port that day, traffic does seem to get heavy there, so time getting to the beach will depend on that. Usually the cabs will stop downtown, on the return trip, for the people that want to shop there.
I don't recall any restaurants near there, either. If you want a beach with restaurants nearby it isn't a bad idea to go to a resort beach - assuming they will allow you on the grounds (and most will if you are there to spend money).
What is the name of that famous beach on St Thomas around the bend - Frenchman's Reef (or something?).
You can go there and buy cocktails and food while enjoying a really nice beach - and it is a lot closer than Magen's bay.
I am the editor, but I also speculate, ask questions and play devil's advocate. I reserve the right to change my mind.
I got curious about this and did a google map search of Magens Bay. Apparently there is a place there called the Tropic Leisure Club at Magens Point Resort, but I can't tell how close it is to the beach. I was not previously aware of this but then I've not been to Magens Bay in quite a while. It says the restaurant is the Rumbuzz but the restaurant link is no longer live. Magens Point Resort | Resort Overview
There is a snack bar on the beach that serves burgers and pizza. I do not know if it is affiliated with the resort.