Heat the olive oil in a medium skillet. Add the onion and mushrooms. Cook over medium high heat until onions are translucent and any liquid released from the mushrooms has cooked off - about 6-8 minutes.
Add the garlic and spinach. Cook until spinach is wilted and any liquid released has been cooked off - about 2-3 minutes.
Drain and rinse beans. Transfer the mushroom mixture to a food processor and add the parmesan, walnuts, tomatoes, kidney beans, parsley, salt, oregano, and cayenne. Pulse 12-14 times or just until mixture start to stick together and form a shapeable dough. (Don't puree until completely smooth!)
Transfer to a bowl and add breadcrumbs and eggs. Stir well until combined. Cover and place in the fridge for 30 minutes.
Preheat the oven to 400 degrees Fahrenheit. Generously grease the bottom of a 9"x11" glass baking dish. Roll meatball mixture into golf ball sized meatballs. Arrange in neat rows in the glass baking dish. Bake for 30 minutes or until lightly browned and firm to touch. Allow to cool for 5 minutes before serving.
To make the sauce, heat the butter/olive oil in a small saucepan. Add the mushrooms and onion and cook until onion is translucent and lightly browned. Add the jalapeño and cook another 2 minutes. Stir in the garlic, oregano, tomato sauce, and tomato paste. Bring to a gentle simmer and turn off heat. Serve with pasta and meatballs.