返回市场
discord对话日志器

discord对话日志器

作者:SH112354 星标更新:2025-07-03

项目介绍

Discord 对话记录器 MCP 服务器

这是一个 MCP(模型上下文协议)服务器,允许 AI 助手将对话记录到 Discord 中进行审查和历史追踪。

スクリーンショット 2025-07-02 235804

概述

此 MCP 服务器提供了一种简单的方法,让 AI 助手在 Discord 中维护对话日志。它适用于:

  • 审计跟踪:保留重要交互和决策的记录
  • 审查:轻松回顾过去的对话和背景
  • 协作:与团队成员分享对话历史
  • 调试:追踪问题及其解决方案

特性

  • 记录具有不同角色的消息(人类、助手、系统)
  • 使用颜色编码的 Discord 嵌入消息以方便识别
  • 自动创建线程以组织日志
  • 所有消息都带有时间戳
  • 可选的上下文元数据

要求

  • Rust(1.70 或更高版本)
  • Discord 账户和机器人
  • 兼容 MCP 的 AI 客户端(如 Claude Desktop、Claude Code 等)

设置

1. 创建 Discord 机器人

  1. 访问 Discord 开发者门户
  2. 创建一个新的应用程序
  3. 在“机器人”部分创建一个机器人并获取令牌
  4. 设置所需权限:
    • 发送消息
    • 创建公共线程
    • 阅读消息历史
    • 嵌入链接
  5. 在“机器人”部分启用特权网关意图:
    • 消息内容意图

2. 安装

cargo install --git https://github.com/SH11235/discord-conversation-logger.git

或者克隆并本地构建:

git clone https://github.com/SH11235/discord-conversation-logger.git
cd discord-conversation-logger
cargo install --path .

配置

快速设置 Claude Code

  1. 从仓库目录运行设置脚本:

    ./setup-discord-env.sh
    
  2. 编辑 ~/.claude/discord-config.json 文件,添加您的 Discord 凭证:

    {
      "bot_token": "YOUR_DISCORD_BOT_TOKEN",
      "channel_id": "YOUR_CHANNEL_ID",
      "thread_name": "Conversation Log"  // 可选,默认为 "Conversation Log"
    }
    
  3. 加载环境变量(可选,用于测试):

    source ./load-discord-env.sh
    
  4. 将 MCP 服务器添加到 Claude Code:

    # 首先加载环境变量(如果使用 discord-config.json):
    source ./load-discord-env.sh
    
    # 全局使用(所有项目可用):
    claude mcp add -s user discord-conversation-logger discord-conversation-logger \
      -e DISCORD_TOKEN="$DISCORD_TOKEN" \
      -- --log-channel-id "$LOG_CHANNEL_ID" --log-thread-name "$LOG_THREAD_NAME"
    
    # 或手动指定值:
    claude mcp add -s user discord-conversation-logger discord-conversation-logger \
      -e DISCORD_TOKEN="your-actual-discord-bot-token" \
      -- --log-channel-id "123456789012345678" --log-thread-name "Conversation Log"
    
    # 本地项目使用(默认):
    claude mcp add discord-conversation-logger discord-conversation-logger \
      -e DISCORD_TOKEN="$DISCORD_TOKEN" \
      -- --log-channel-id "$LOG_CHANNEL_ID" --log-thread-name "$LOG_THREAD_NAME"
    

    注意:MCP 服务器从环境变量或命令行参数中读取配置,而不是直接从 ~/.claude/discord-config.json 中读取。

手动配置

另外,您可以手动将以下内容添加到您的 MCP 配置文件(~/.claude.json)中:

{
  "mcpServers": {
    "discord-conversation-logger": {
      "command": "discord-conversation-logger",
      "args": [
        "--log-channel-id", "your-channel-id",
        "--log-thread-name", "AI Conversation Log"
      ],
      "env": {
        "DISCORD_TOKEN": "your-discord-bot-token"
      }
    }
  }
}

环境变量

  • DISCORD_TOKEN:您的 Discord 机器人令牌
  • LOG_CHANNEL_ID:用于日志的 Discord 频道 ID
  • LOG_THREAD_NAME:线程名称(默认:"Conversation Log")

线程命名

记录器会自动将当前工作目录包含在线程名称中。例如:

  • 如果 LOG_THREAD_NAME 是 "Conversation Log",且您正在 /home/user/project 目录下工作
  • 实际的线程名称将是:"Conversation Log [/home/user/project]"

这有助于确定对话日志属于哪个项目或上下文。

使用方法

配置完成后,AI 助手可以使用 log_conversation 工具:

助手:我将记录这个重要的决定。
[使用 log_conversation 工具,角色="assistant",消息="实现了功能 X,采用方法 Y"]

消息角色

  • human:用户消息和请求(蓝色)
  • assistant:AI 响应和行动(绿色)
  • system:系统消息、错误或元数据(灰色)

示例用法

{
  "role": "human",
  "message": "请实现一个新的身份验证系统",
  "context": "功能请求"
}

消息格式

记录的消息将以嵌入消息的形式出现在 Discord 中,包括:

  • 标题:带有表情符号的角色指示符(💬 HUMAN,💬 ASSISTANT,💬 SYSTEM)
  • 颜色:特定于角色的颜色编码
  • 内容:消息文本
  • 时间戳:自动时间戳
  • 页脚:可选的上下文信息

查找 Discord ID

获取频道 ID

  1. 在 Discord 中启用开发者模式(设置 → 高级 → 开发者模式)
  2. 右键点击频道 → “复制 ID”

开发

要贡献或修改:

git clone https://github.com/SH11235/discord-conversation-logger.git
cd discord-conversation-logger
cargo build
cargo run -- --log-channel-id YOUR_CHANNEL_ID

许可证

MIT 许可证 - 详情见 LICENSE 文件

CLAUDE.md 配置示例

当与 Claude Code 一起使用时,您可以在项目中创建一个 CLAUDE.md 文件来建立日志规则:

# Discord 对话记录器规则

## 重要消息日志规则

请在以下情况下使用 discord-conversation-logger MCP 来记录消息:

### 1. 用户消息(human)
- 任务开始/变更/完成指令
- 重要决策或确认
- 错误报告或问题识别

### 2. 助手消息(assistant)
- 任务完成报告
- 重要建议或解决方案
- 错误解决方法
- 显著更改的总结

### 3. 系统消息(system)
- 关键错误或警告
- 重要环境变化
- 与安全相关的通知

## 日志格式

mcp__discord-conversation-logger__log_conversation( message: "实际消息内容", role: "human" | "assistant" | "system", context: "简短的上下文描述" )


## 不需要日志的情况
- 简单的确认
- 中间进度报告
- 临时调试输出

此配置有助于维护重要项目决策和进展的审计跟踪。

贡献

欢迎贡献!请随时提交拉取请求。

致谢

使用以下工具构建: