返回市场
微信日志-MCP服务器

微信日志-MCP服务器

作者:LupinLin115 星标更新:2025-09-24

项目介绍

Chatlog MCP Server

Node.js 版本 许可证

一个专门为 Claude Code CLI 设计的聊天记录 MCP 服务器,支持从微信聊天中直接下载媒体文件到本地存储。

✨ 主要功能

  • 🔍 聊天历史查询 支持按时间、发送者或关键词过滤聊天历史
  • 📥 直接下载 图片、语音、视频和文件可以直接下载到本地设备
  • 🗂️ 智能管理 自动创建目录结构以避免文件冲突
  • 🛡️ 安全可靠 坚固的错误处理和超时保护
  • 🔧 简单配置 最小化配置,开箱即用

🚀 快速开始

系统要求

  • Node.js >= 16.0.0
  • Claude Code CLI
  • 聊天记录 API 服务正在运行

一键安装

Linux/macOS:

curl -sSL https://raw.githubusercontent.com/yourusername/wechatlog-mcp-server/main/install.sh | bash

Windows:

powershell -Command "& { iwr https://raw.githubusercontent.com/yourusername/wechatlog-mcp-server/main/install.bat | Out-String | Invoke-Expression }"

手动安装:

# 克隆项目
git clone https://github.com/yourusername/wechatlog-mcp-server.git
cd wechatlog-mcp-server

# 运行安装脚本
./install.sh

# 或使用 Node.js 安装
node install.js

配置

  1. 编辑 .env 文件,基于以上信息执行以下指令:
CHATLOG_BASE_URL=http://127.0.0.1:5030
DEFAULT_DOWNLOAD_DIR=/tmp/chatlog-downloads  # 默认下载目录(绝对路径)
PERPLEXITY_API_KEY=your_perplexity_api_key_here  # 可选

注意DEFAULT_DOWNLOAD_DIR 必须是绝对路径,例如:

  • Linux/macOS: /home/user/downloads
  • macOS: /Users/username/Downloads
  • Windows: C:\Users\username\Downloads
  1. 确保 Chatlog API 服务在指定地址运行

注册到 Claude

claude mcp add chatlog node chatlog-mcp-server.js

使用说明

基本命令

# 启动服务器
npm start

# 运行测试
npm test

# 查看帮助
claude mcp list

可用工具

聊天记录管理

  • queryChatLog 查询指定聊天对象的聊天历史
  • getContactList 获取微信联系人列表
  • getChatroomList 获取微信群聊列表
  • getSessionList 获取会话列表

📥 下载媒体文件

  • downloadImage 下载图片文件
  • downloadVoice 下载语音消息
  • downloadVideo 下载视频文件
  • downloadFile 下载其他文件

🔧 系统工具

  • healthCheck 检查服务状态
  • accessDataFile 访问数据文件

📁 项目结构

chatlog-mcp/
├── chatlog-mcp-server.js    # 主服务器文件
├── package.json              # 项目配置
├── install.js               # Node.js 安装脚本
├── install.sh               # Linux/macOS 安装脚本
├── install.bat              # Windows 安装脚本
├── test-chatlog-mcp.sh      # 测试脚本
├── .env.example             # 环境变量模板
├── .env                     # 环境配置(安装后生成)
├── downloads/               # 下载目录(自动创建)
└── logs/                    # 日志目录(自动创建)

🔧 配置说明

环境变量

变量名称描述默认值是否必需
CHATLOG_BASE_URLChatlog API 服务地址http://127.0.0.1:5030
DEFAULT_DOWNLOAD_DIR默认下载目录/tmp/chatlog-downloads
PERPLEXITY_API_KEYPerplexity API 密钥-

下载目录

如果没有指定 saveDir 参数,媒体文件将被下载到由环境变量指定的 DEFAULT_DOWNLOAD_DIR 目录:

  • 默认目录: /tmp/chatlog-downloads/
  • 也可以指定任何绝对路径作为 saveDir 参数

🧪 测试

运行内置测试脚本:

./test-chatlog-mcp.sh

或者使用 npm:

npm test

📝 示例用法

查询聊天历史

// 查询今天与文件传输助手的聊天
mcp__wechatlog__queryChatLog({
  talker: "filehelper",
  time: "2025-09-24"
})

下载最新图片

// 下载图片到指定目录(可选,如不指定将使用环境变量中的默认目录)
mcp__wechatlog__downloadImage({
  id: "595f549d393e960a64b9a4883a6dd1fe",
  saveDir: "/Users/username/Downloads",  // 可选,绝对路径
  fileName: "my-image.jpg"
})

// 或使用默认目录
mcp__wechatlog__downloadImage({
  id: "595f549d393e960a64b9a4883a6dd1fe",
  fileName: "my-image.jpg"
})

获取联系人列表

// 搜索特定联系人
mcp__wechatlog__getContactList({
  keyword: "张三",
  limit: 10,
  offset: 0,
  format: "json"
})

🛠️ 开发

本地开发

# 克隆项目
git clone https://github.com/LupinLin1/chatlog-mcp-server.git
cd chatlog-mcp-server

# 安装依赖(无外部依赖)
npm install

# 开发模式运行
npm start

贡献

  1. 分叉项目
  2. 创建功能分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 打开拉取请求

许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件获取详细信息。

🤝 支持

🔗 相关链接


⭐ 如果这个项目对你有帮助,请给它点个星!