As always with MPF there are a number of ways to do this, here are some ideas.
If the score widget you wish to show is only a score, then MPFVariable supports min/max players and can show and hide itself accordingly. If you want a more robust widget with score, player number, maybe a picture or some other text, make that your reusable widget/scene and put it under an MPFConditional node that uses min/max players to control its appearance. Alternatively, you could make the MPFVariable score your parent node (with min/max condition) and other elements (like player number or picture) children of the MPFVariable node, so they will also show and hide with it.
I would recommend putting all of your instances of the widget/scene under a single parent slide/widget that you can show or hide, if you want more control than just min/max players. I say widget/scene here because if it's persistent, or part of another slide or widget, then your reusable "player score" piece wouldn't have to be an MPFWidget, it could just be a regular Godot scene. It only needs to be an MPFWidget if you want to use widget_player to control it.
With this kind of setup, using the built-in min/max player properties of MPFVariable or MPFConditional, you shouldn't need to send any events from MPF to make the nodes show. And for example, if you want to not shot the widget for the current player, use an MPFConditional where current player number != the player number of the widget ought to do just fine.