Cut the ends off the spaghetti squash. Stand it up, and cut the squash in half lengthwise. Scoop out the seeds and discard or save for later to roast. Drizzle the inside of the spaghetti squash with olive oil and sprinkle with salt and pepper.
Turn the squash over and place the flat/cut side down on a baking sheet lined with parchment paper. Roast in the oven for 40 minutes, then flip them over and roast for another 15 minutes.
While the squash is roasting, place the onions in a saucepan with the olive oil over medium-high heat. Sauté the onions for about 25 – 20, stirring frequently, until the onions are caramelized and golden brown.
Add the tomatoes, pumpkin puree, broth, water, garlic, and salt.
Bring the sauce to a bubble, stirring frequently for about 10 minutes.
Once the squash is done roasting, set the broiler to high.
Use a fork to pull the spaghetti strands from the sides of the squash shell.
Scoop some of the marinara into the center of the squash and use your fork to mix it in. Sprinkle each squash with some mozzarella and Parmesan.
Broil for 2 – 5 minutes until the cheese melts and gets toasty brown.