Melt butter in a medium skillet over medium-high heat. Add onion and cook, stirring often, until softened, 3 to 5 minutes. Add flour and cook, stirring, 1 minute. Transfer to slow cooker.
Stir tomatoes with juice, broth and 1/2 cup water into cooker. Cover and cook on low until tomatoes are very soft, 5 to 6 hours. Puree with an immersion blender, then stir in cream and cayenne. Season with salt and pepper and serve.