This is complicated lol.
Using the (V.O.) extension to indicate whether or not the MC is hearing them speak might not be intuitive. Especially if you need to use actual (V.O.) for narrator or whatever.
This is a suggestion, not gospel -- I'd maybe consider parentheticals instead, and adopt a tag that controls whether or not the MC hears them, e.g. and with random names made up on the spot:
Bill frantically searches under magazines, behind cushions...
GHOST LORD WILLIAM
(unheard)
What's the idiot looking for?
BILL
Where the **** are my keys?
GHOST LADY MARY
(unheard)
They're over there, you stupid man.
Bill looks around, puzzled and angry.
BILL
Bloody hell!
Lady Mary stands over the keys.
GHOST LADY MARY
Here.
Bill spins round, who said that?
...that might not be the "right" way, but I took a shot lol.
-Derek