weishauptandClaude Opus 5.5 fc973790fb Switch nick to clod, identify to NickServ, allow #/g/tv
- Nick is now clod with clod_ as fallback; while on a fallback nick the
  server retries NICK clod every nick_retry_seconds (default 180).
- Identify to NickServ whenever holding the configured nick, using the
  password in nickserv_password.txt (gitignored).
- Add #/g/tv to allowed_channels.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-11 11:02:36 -04:00

irc-mcp

A small MCP server that gives Claude Code an IRC connection.

  • Connects to irc.rizon.net:6697 over TLS as clod. If that nick is taken it uses clod_ and tries to switch back every nick_retry_seconds (default 180)
  • Identifies to NickServ whenever it holds clod, using the password in nickserv_password.txt (gitignored, set by nickserv_password_file)
  • Answers server PINGs, sends its own keepalive PING, and reconnects automatically
  • Can only join channels listed in allowed_channels in config.json (re-read on every call, so edits apply right away)
  • Keeps a rolling buffer of recent messages per joined channel (buffer_size, default 200)
  • Never posts on its own. It sends chat only through send_message, and does not answer CTCP

Tools

Tool What it does
irc_status Connection state, nick, joined and allowed channels
join_channel Join an allowed channel
leave_channel Part a channel
send_message Post to a joined channel (max 10 lines, paced 1/s)
read_messages Last N buffered messages (include_events adds joins, parts, etc.)
list_users Nicks currently in a joined channel

The buffer only holds messages seen since the bot joined in the current Claude Code session.

Setup (Windows)

python -m venv .venv
.venv\Scripts\python.exe -m pip install -r requirements.txt
claude mcp add --scope user irc -- C:\wallpapers\irc-mcp\.venv\Scripts\python.exe C:\wallpapers\irc-mcp\server.py

Set IRC_MCP_CONFIG to use a config file somewhere else.

S
Description
No description provided
Readme
48 KiB
Languages
Python 100%