Preheat a non-stick pan on medium heat and add half the butter.
Place the bacon, mushrooms and tomato in the pan and season.
Turn once when the bacon and tomato have browned.
Remove bacon and tomato when done and allow mushrooms to cook a little longer.
Remove and plate.
Pour pan juices over tomato and mushrooms.
Wipe the pan with kitchen paper and replace onto the heat and add the remaining butter.
Add the eggs and season with salt and pepper.
Whilst eggs are cooking prepare the toast.
Serve the eggs when done to your liking.
The coordination and timing of this dish are most important for a great end result.
By placing a lid over the pan, the steam will cook the top of the eggs without having to flip it.