$idle returns the number of seconds you have been idle in mirc for, so its always zero if you do a command to see what it is, becuase you just did a command.
try typing in /TIMER 60 1 echo -st $!idle is $idle
you well see it count up once a second, when its around 10 type something then press enter
it well reset to zero