Pour the wine or stock into a large saucepan, add the onion and garlic, then bring to the boil over a high heat. Boil rapidly for 1 minute. Add the mussels, cover the pan tightly and cook for 2–3 minutes, shaking the pan occasionally. Uncover the pan and give the mussels a good stir. Using tongs, remove the mussels from the pan as soon as they open and set them aside. Discard any mussels that remain shut.
When the mussels are cool enough to handle, remove and discard the top shell. Place 24 mussels on the half shell in a single layer in a shallow flameproof dish, loosening the mussels from the shells but leaving them in place. Set the dish aside.
Preheat the grill to high. Put the bread in a food processor or blender and process to fine crumbs. Add the parsley, parmesan, lemon zest, cayenne pepper and olive oil and process until well blended.
Using your fingers, put a mound of the cheese and crumb mixture on each mussel and pack it down firmly so the mussel is completely covered. Put the dish under the grill and cook for 2–3 minutes or until the crumb topping is lightly browned. Divide the mussels among individual plates and serve with lemon wedges.