Cut off a thin slice from the bottom of the tomatoes so they stand flat. Cut around the top of the tomatoes leaving about ½ inch on the sides. Scoop out the top and insides leaving the sides and bottom intact. Place on a greased ovenproof dish.
Put all of the removed tomato bits into a saucepan. Cook over high heat for 3 minutes.
Pour the tomato puree through a fine mesh strainer, mashing with the back of a spoon to get as much juice and pulp as possible.
Add the tomato puree back to the saucepan with the sprigs of parsley and thyme and bay leaf. Simmer over low heat for 10 minutes stirring occasionally. Remove the herbs, stir in the chopped bread and set aside.
In a skillet combine olive oil, bacon, shallots and garlic and sauté until the bacon is lightly browned. Add chopped mushrooms and cook a few minutes until mushrooms start to release some water.
Combine bread mixture, bacon and mushroom mixture with the egg and chopped parsley. Stuff into the tomato shells.
Bake at 350°F until the top is lightly browned, about 30 minutes.