不和谐观察者
Claude Code的Discord频道监视器MCP服务器。监视所有文本频道 在Discord服务器上,将唤醒通知推送到Claude代码中 新消息到达时的会话。
这是一个“门铃,不是邮件收发室”——它通知代理有新的东西 出现,然后代理使用 disc_read 和 disc_send MCP工具(来自 这 disc-server MCP服务器)进行交互。
先决条件
- 克劳德代码 CLI(
claude) jq(JSON处理器)curl或wget- Discord机器人令牌保存在
~/secrets/discord-bot-token
安装
curl -fsSL https://raw.githubusercontent.com/Wave-Engineering/mcp-server-discord-watcher/main/scripts/install-remote.sh | bash这将为您的平台下载预编译的二进制文件,注册MCP 服务器,并配置Discord连接。无需克隆或运行时。
验证安装:
curl -fsSL https://raw.githubusercontent.com/Wave-Engineering/mcp-server-discord-watcher/main/scripts/install-remote.sh | bash -s -- --check安装特定版本:
curl -fsSL https://raw.githubusercontent.com/Wave-Engineering/mcp-server-discord-watcher/main/scripts/install-remote.sh | bash -s -- --version v1.0.0开发安装
如果你正在处理观察器本身,克隆仓库并使用本地 安装程序(需要 包子):
git clone https://github.com/Wave-Engineering/mcp-server-discord-watcher.git
cd mcp-server-discord-watcher
./scripts/install.sh运作原理
观察者连接到Discord的REST API,并在 以15秒的间隔配置公会。当新消息到达时 寄往代理人(通过 @all, @,或 @),它发送 向Claude Code会话发送MCP通知。
消息过滤
- 自回声滤波 --包含代理自己签名的消息
(-- ****)跳过以防止回声循环。
- 目标路由 --仅限发往以下地址的邮件
@all,@,或
@ 交付。集 DISCORD_WATCHER_VERBOSE=1 绕过 过滤并接收所有消息。
- 语音备忘录转录 --音频附件会自动转录
通过Whisper STT交付 [voice memo from : ""].
紧急停止开关
如果机器人收到429(速率限制)响应,它会在以下位置触发终止开关 ~/.claude/discord-bot.kill 带有到期时间戳。轮询暂停,直到 到期后,自动解除。
配置
Discord配置
观察者读到 ~/.claude/discord.json 对于公会和代币配置:
{
"guild_id": "1486516321385578576",
"token_path": "~/secrets/discord-bot-token",
"channels": {
"roll-call": { "name": "roll-call", "id": "1487382005036617851" }
}
}回退链:配置文件->环境变量->硬编码默认值。
环境变量
| 变量 | 默认值 | 描述 |
|---|---|---|
DISCORD_BOT_TOKEN | (从令牌文件读取) | Bot令牌(覆盖文件) |
DISCORD_GUILD_ID | 1486516321385578576 | 公会观看 |
DISCORD_TOKEN_PATH | ~/secrets/discord-bot-token | 令牌文件的路径 |
DISCORD_WATCHER_VERBOSE | 0 | 设置为 1 绕过邮件过滤 |
STT_ENDPOINT | http://archer:8300/v1/audio/transcriptions | Whisper STT端点 |
STT_MODEL | deepdml/faster-whisper-large-v3-turbo-ct2 | STT型号名称 |
卸载
如果通过远程安装程序安装:
curl -fsSL https://raw.githubusercontent.com/Wave-Engineering/mcp-server-discord-watcher/main/scripts/install-remote.sh | bash -s -- --uninstall如果从本地克隆安装:
./scripts/install.sh --uninstall许可证
麻省理工学院——见 许可证.
