; the trigger on !request, you maybe want to change
; the channel name below
on *:text:!request *:#: {
  ; check if # is the left char.
  if ($left($2,1) == $chr(35))  {
    ; Send you a message about the bot joining a channel. 
    ; Replace YourNick with your nickname on irc.
    .msg YourNick $nick requested the bot to join $+($2,.)
    ; The bot join the channel
    join $2
    ; Sending a notice to the nick requesting the bot
    .notice $nick I join $2 due request from you.
  ; If the right char arent #, send a message about it.
  else if ($left($2,1) != $chr(35)) {
    ; The bot send you a message telling you the users did request a non valid channel.
    .msg YourNick $nick tryed to request me, but didn't give a valid channel.
    ; The bot tells the user it dosen't look like a valid channel.
    .notice $nick That dosen't look like a valid channel, don't forget to use $chr(35) infront of the channel name. Try again.

This code goes in to your remote, ALT + R in your mirc, i commented everything so you see what it does.

You must change YourNick to your nickname.
It's safe to remove every line with ; in front of it.

You maybe want to change the channel too? it's done here:
on *:text:!request *:#: {
add the channel name after the # sign.

If you want help with the Accept - Decline part, let me know. smile

if ($me != tired) { return } | else { echo -a Get a pot of coffee now $+($me,.) }