This should theoreticaly work...
I don't have MP!L to test atm, but it should work fine...
code:
function OnEvent_ChatWndReceiveMessage (ChatWnd, Origin, Message, MessageKind) {
   if (/(?:\s|^)Word(?:\s|$)/i.test(Message)) {
   //This matches only whole words, to match pieces of a word too,
   //use (/Word/i.test(Message)) instead
      for (var e = new Enumerator(ChatWnd.Contacts); !e.atEnd(); e.moveNext()) {
      Contact = e.item()
      Contact.Blocked = true
      MsgPlus.AddTimer("Unblock" + Contact.Email, Time)
   }
}
functionOnEvent_Timer (TimerId) {
   if (/^Unblock(.+)$/.test(TimerId)) {
      Email = RegExp.$1
      var Contact = Messenger.MyContacts.GetContact(Email)
      Contact.Blocked = false
   }
}