Marinate the tomatoes, whisk together all ingredients except tomatoes in a bowl. Add tomatoes and then cover and refrigerate for at least 15 minutes, can even be left overnight.
Preheat the oven to 400 degrees F.
After 15 minutes remove garlic cloves and add the halved tomatoes along with the remaining liquids to a baking sheet. Roast for 25 to 30 minutes, remove from the oven and set aside.
While the tomatoes marinate and roast, work on the burgers. Combine the basil, garlic, and pine nuts in a food processor or blender and pulse until coarsely chopped. With the machine running, slowly add the olive oil and process until smooth. Add the cheese and pulse until combined. Season with salt and pepper to taste and add the crushed red pepper, if using.
Combine 3 tablespoons of the pesto, 3/4 teaspoon salt, 1/4 teaspoon pepper, and ground chicken and form into 4 patties. Or if using the mushrooms rub them with about a tablespoon of olive oil and then sprinkle with salt and pepper.
Place on grill or skillet and cook on each side until golden and cooked through, about 2-3 minutes per side. Once you flip the burgers, or mushrooms, top with a slice of fresh mozzarella cheese. Grill until the cheese is melted and the burgers, or mushrooms, are cooked through, about 4 to 5 minutes.
Place the burger on the bottom of a bun and top with a generous amount of pesto and a handful of the roasted tomatoes. Add the top bun and dig in!