soulshack, an irc chatbot. openai/ollama/gemini/anthropic apis. basic shell tools and mcp server support.
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"soulshack": {
"command": "<see-readme>",
"args": []
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Soulshack is an advanced IRC chatbot powered by LLMs, designed to bridge traditional chat with modern AI capabilities.
No automated test available for this server. Check the GitHub README for setup instructions.
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
No package registry to scan.
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in communication / ai-ml
Persistent memory using a knowledge graph
Dynamic problem-solving through sequential thought chains
Asynchronous coordination layer for AI coding agents: identities, inboxes, searchable threads, and advisory file leases over FastMCP + Git + SQLite
Workspace template + MCP server for Claude Code, Codex CLI, Cursor & Windsurf. Multi-agent knowledge engine (ag-refresh / ag-ask) that turns any codebase into a queryable AI assistant.
MCP Security Weekly
Get CVE alerts and security updates for Soulshack and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.

Soulshack is an advanced IRC chatbot powered by LLMs, designed to bridge traditional chat with modern AI capabilities.
docker build . -t soulshack:dev
Prerequisites: Go 1.23+
Clone and Build:
git clone https://github.com/pkdindustries/soulshack.git
cd soulshack
go build -o soulshack cmd/soulshack/main.go
Run:
Local Binary:
./soulshack --config examples/chatbot.yml
Docker:
# Mount config file to container
docker run -v $(pwd)/examples/chatbot.yml:/config.yml soulshack:dev \
--config /config.yml
Local Binary:
./soulshack \
--nick soulshack \
--server irc.example.com \
--port 6697 \
--tls \
--channel '#soulshack' \
--saslnick mybot \
--saslpass mypassword \
--admins "admin!*@*" \
--model openai/gpt-5.1 \
--openaikey "sk-..." \
--maxtokens 4096 \
--temperature 1 \
--apitimeout 5m \
--tool "examples/tools/datetime.sh" \
--tool "irc__op" \
--thinkingeffort off \
--urlwatcher \
--verbose
Docker:
docker run soulshack:dev \
--nick soulshack \
--server irc.example.com \
--port 6697 \
--tls \
--channel '#soulshack' \
--saslnick mybot \
--saslpass mypassword \
--admins "admin!*@*" \
--model openai/gpt-5.1 \
--openaikey "sk-..." \
--maxtokens 4096 \
--temperature 1 \
--apitimeout 5m \
--thinkingeffort off \
--urlwatcher \
--verbose
# Note: Local file tools/scripts require volume mounts to work in Docker
Local Binary:
./soulshack \
--server irc.example.com \
--channel '#soulshack' \
--model ollama/qwen3:30b \
--ollamaurl "http://localhost:11434"
Docker:
# Use --network host to access Ollama on localhost
docker run --network host soulshack:dev \
--server irc.example.com \
--channel '#soulshack' \
--model ollama/qwen3:30b \
--ollamaurl "http://localhost:11434"
Local Binary:
./soulshack \
--server irc.example.com \
--channel '#soulshack' \
--model anthropic/claude-opus-4.5 \
--anthropickey "sk-ant-..."
Docker:
docker run soulshack:dev \
--server irc.example.com \
--channel '#soulshack' \
--model anthropic/claude-opus-4.5 \
--anthropickey "sk-ant-..."
| Flag | Default | Description |
|---|---|---|
-n, --nick | soulshack | Bot nickname |
-s, --server | localhost | IRC server address |
-p, --port | 6667 | IRC server port |
-c, --channel | Channel to join | |
-e, --tls | false | Enable TLS |
--tlsinsecure | false | Skip TLS cert verification |
--saslnick | SASL username | |
--saslpass | SASL password | |
-b, --config | Path to YAML config file | |
-A, --admins | Comma-separated admin hostmasks | |
-V, --verbose | false | Enable debug logging |
| `--mo |