Place tomatoes, garlic, onions and serrano peppers on a large baking sheet. Bake for 30-40 minutes until onions are translucent and all vegetables are roasted. Remove from the oven and allow to cool for 10 minutes.
Place all remaining ingredients and roasted vegetables in a food processor or blender and pulse until blended to the desired consistency. Season to taste and add more or fewer peppers to obtain desired heat.