Toss the tomatoes with the oil and roast for 5-6 minutes, until bursting.
Remove and let cool.
Put the pesto ingredients in a food processor and pulse until blended. Stream in the oil slowly.
Make the sandwich: Spread butter on one side of bread and lay face down on a cutting board. Spread with pesto. Top with mozzarella and tomatoes.
Spread the other slice with butter on one side. Mix the ricotta with the Parmesan and spread on the other side and sandwich the two slices together, butter side out.
Heat a skillet over medium low heat and add the sandwich to the pan.
Cover and cook for a minute or two, checking to see if the bottom is browned. When it’s browned, carefully flip. Cover and continue cooking until both sides are golden brown and cheese is melted, adjusting heat as necessary.
Transfer to a cutting board, cut in half, and enjoy with lots of napkins.
Notes
You’ll have leftover pesto and tomatoes. Use them in the following: