The obvious suggestion for Tortola is to take a ferry to Virgin Gorda and see the Baths. Truly unique experience. We loved it. Easy to do on your own. Just make sure you can get the ferry back before all-aboard time for your cruise. I highly recommend Speedy's. They were great and they're walking distance from the cruise pier. Plus, they throw in lunch. We were very satisfied with them.
Tortola- definitely the most popular and worthwhile excursion is Virgin Gorda and the Baths.
St Thomas- I actually enjoy coral world, it's just an aquarium with places to see the natural water as well, coki beach next door is pretty nice too. I also enjoyed seeing blackboards castle (more of a turret) also shopping downtown is decent. Magen's Bay will be touted as one of the best beaches in the world, but it's honestly a little crowded these days to truly enjoy it, but nice to see from above. Paradise point and the sky ride up have a beautiful view, plus it's within walking distance from the ships, but it's pricey to get up there and the food up top is mediocre, However they do claim to be the inventor of the Bailey's Bushwacker (basically an alcoholic frosty)
St John- Beach, beautiful beaches, some of the nicest i've seen. Trunk bay is the most popular, and a beautiful site, Also i've heard good things about the old sugar plantation.
All of these islands are solid for ecotourism as well, zip lining is very popular in St Thomas due to it's mountainous terrain. Taxi's are always readily available in St. Thomas, my first trip there we just hopped taxi's and explored. Great snorkeling spots in all 3, parasailing and party boat/ snorkeling excursions are all good bets as well.
Also, if you do choose to ferry over to St Johns from St Thomas allot at least an hour each way, it's about 20-30 minutes to the ferry port and about a 20 minute ride to St John's from there.
We booked our own excursions outside of DCL (we love to snorkel and HATE that DCL has short snorkel excursions that tend to be crowded and expensive)! In Tortola we booked with Island Surf & Sail. We charted a private boat for 6 of us for a full day for the same price we would've paid for a shorter excursion booked through DCL (turned out we just did 5 of us since DH stayed back on the ship not feeling well). We had the option to go "anywhere" and we originally wanted to go to the Baths and anchor and swim into it, but our captain discouraged us against that since there were a couple other cruise ships in port and he said it would be extremely crowded. So instead, he took us to some amazingly awesome snorkeling spots: we went to the Indians, the Caves, and a "secret" spot that the locals pretty much only know about that had lots of rays. We had the stand-up paddle boards (which we never used), snacks, water/drinks, and we stopped for lunch at this floating restaurant/grill for lunch. We made it back to the ship with several hours to spare (even went shopping in the port ships). So unless you can make it to the Baths like @ChuckElias did, would try and find another way to visit the Baths when its not so crowded.
For St. Thomas, we did a private sailing charter with Rumbaba for the 6 of us. We actually sailed (not motored like a lot of "sailing" tours will do). My kids learned how to sail some, which was fun for them. The owners were extremely friendly and very knowledgeable about the history and geography of the USVI (very fascinating). We asked them to take us snorkeling where they would go snorkeling if they were out for the day. Ended up in a pretty cool spot (forget the name) where we saw a ton of fish. Again, the price was comparable to booking an excursion with DCL. This was only "4-hrs" but really ended up being more like 51/2-6 hrs by the time we were done with loading/unloading.
Both excursions were great and we were back to the ship in plenty of time before last call. I definitely feel more comfortable booking private excursions for our family after this, especially for activities such as snorkeling (where we hate being with a ton of people who end up kicking you in the face, scaring off the fish, and having to wear that awful snorkel vest).