ircv3-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| IRCV3_MCP_CONFIG_DIR | No | Override the config directory path (default: ~/.config/ircv3-mcp) | |
| IRCV3_MCP_SECRET_KEY | No | Encryption key for secrets, used as alternative to keyfile |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| irc_list_networksA | List configured IRC networks. Each has a state: "connected" (live this session) or "idle" (configured but not connected yet). Idle is normal and not an error — an account connects automatically the first time you use any tool on it. Just use the tools; do not treat idle as a failure. |
| irc_statusB | Show the current connection status for an IRC account. |
| irc_read_historyB | Fetch recent messages from a channel or DM. Use msgid values from results for reply/react/redact. |
| irc_list_conversationsB | List channels and DMs that had activity in the given time window. |
| irc_list_membersB | List the current members of a channel with their mode prefixes. |
| irc_whoisC | Look up information about a nick on IRC. |
| irc_recent_eventsA | Return recent live IRC events buffered since this session connected: messages, joins/parts/quits, nick/topic/mode changes, and reaction TAGMSGs. To watch for new activity, poll this tool with since_seq set to the cursor returned by the previous call — you get only events after it. Filter by target (a channel or nick) and kinds. This is the live in-memory buffer; for older server-side history use irc_read_history. |
| irc_send_messageA | Send a message to a channel or user. Provide text (single line) or lines (multiline array). Use in_reply_to with a msgid to thread replies. On success returns { ok: true } and, when available, the server-assigned msgid (use it for follow-up reply/react/redact). ok: true means the server confirmed the send — trust it; do not re-read history to verify. A failed or unconfirmed send returns an error, never an empty result. |
| irc_reactA | Add or remove an emoji reaction on a message identified by its msgid. |
| irc_send_with_typingA | Send a message the way a person would: emit a typing notification, hold it for a short time proportional to the message length (about 90 words per minute by default, tunable with wpm), then send the message. Use this for direct conversation where a natural typing indicator is desirable; use irc_send_message when you just want to deliver text immediately. Returns { ok: true } and the msgid when available, same as irc_send_message. |
| irc_start_typingA | Send a typing notification (+typing=active) to a channel or user, signalling that a message is being composed. Clients show this for about 6 seconds, so call again to keep it alive while you work, then send the message or call irc_stop_typing. For one-shot human-like sends, prefer irc_send_with_typing. |
| irc_stop_typingA | Clear an active typing notification (+typing=done) for a channel or user without sending a message. Use this if you started typing with irc_start_typing but decided not to send. |
| irc_joinB | Join a channel, optionally with a key (password). |
| irc_partA | Leave a channel with an optional parting reason. |
| irc_mark_readA | Send a read marker up to the given timestamp for a target. |
| irc_redactA | Redact (delete) a message by its msgid. This is destructive and cannot be undone. |
| irc_send_rawA | Send a raw IRC protocol line. Destructive and unrestricted — use only when no higher-level tool fits. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| irc-guide | Complete guide on using the IRC MCP server |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 17 tools
Most tools target clearly distinct actions and resources. The main overlaps are irc_send_message vs irc_send_with_typing and irc_read_history vs irc_recent_events, but the descriptions explicitly separate immediate delivery from typing-indicator sends and server history from the live event buffer, so agents can reliably disambiguate.
All tools share the irc_ prefix and most follow a verb_noun pattern like irc_list_members, irc_send_message, and irc_mark_read. A few names deviate slightly—irc_status, irc_whois, and irc_recent_events are noun-like—but the overall pattern remains predictable and readable.
17 tools is slightly above the typical sweet spot, but each tool maps to a meaningful IRC capability: connection status, history, live events, messaging, typing, reactions, membership, channel join/part, and raw protocol access. None feel redundant enough to remove, and the count is reasonable for an IRC client surface.
The core IRC lifecycle is well covered: join/part, send/reply/react/redact, read history and live events, list members, whois, typing indicators, and read markers. Dedicated tools for topic changes, mode changes, or nick changes are missing, but irc_send_raw provides a workable escape hatch for those operations.