安爸-超级家庭

快速微信聊天记录接入MCP

安爸 发布于

项目简介

从本地数据库文件获取聊天数据 支持多系统,微信 3.x / 4.0 版本 提供 Terminal UI 界面 & 命令行工具 提供 HTTP API 服务,支持查询聊天记录、联系人、群聊、最近会话等信息 支持 MCP SSE 协议,可与支持 MCP 的 AI 助手无缝集成

特点

  • 从本地数据库文件获取聊天数据
  • 支持 Windows / macOS 系统
  • 支持微信 3.x / 4.0 版本
  • 提供 Terminal UI 界面 & 命令行工具
  • 提供 HTTP API 服务,支持查询聊天记录、联系人、群聊、最近会话等信息
  • 支持 MCP SSE 协议,可与支持 MCP 的 AI 助手无缝集成

安装

从源码安装

go install github.com/sjzar/chatlog@latest

下载预编译版本

访问 Releases 页面下载适合您系统的预编译版本。

快速开始

操作流程

  1. 下载并安装微信客户端
  2. 手机微信上操作 我 - 设置 - 通用 - 聊天记录迁移与备份 - 迁移 - 迁移到电脑,这一步的目的是将手机中的聊天记录传输到电脑上。可以放心操作,不会影响到手机上的聊天记录。
  3. 下载 chatlog 预编译版本或从源码安装,推荐使用 go 进行安装。
  4. 运行 chatlog,按照提示进行操作,解密数据并开启 HTTP 服务后,即可通过浏览器或 AI 助手访问聊天记录。

macOS 版本提示

  1. macOS 用户在获取密钥前,需要确认已经关闭 SIP 并安装 Xcode。由于 macOS 的安全机制,在正常情况在无法读取微信进程的内存数据,所以需要临时关闭 SIP。关闭 SIP 的方法:

# 1. 进入恢复模式   Apple Intel Mac: 关机后,按住 Command + R 键开机,直到出现苹果标志和进度条。   Apple Silicon Mac: 关机后,按住开机键不松开,直到出现苹果标志和进度条。 # 2. 打开终端   选项 - 实用工具 - 终端 # 3. 关闭 SIP   输入以下命令关闭 SIP:   csrutil disable # 4. 重启系统

  1. 目前的 macOS 版本方案依赖 lldb 工具,所以需要安装 Xcode,可以从 App Store 进行下载。
  2. 仅获取数据密钥步骤需要关闭 SIP;获取数据密钥后即可重新打开 SIP,不影响解密数据和 HTTP 服务的运行。

Terminal UI 模式

  1. 启动程序:
./chatlog
  1. 使用界面操作:
    • 使用方向键导航菜单
    • Enter 选择菜单项
    • Esc 返回上一级菜单
    • Ctrl+C 退出程序

命令行模式

获取微信数据密钥:

./chatlog key

解密数据库文件:

./chatlog decrypt

HTTP API

启动 HTTP 服务后,可以通过以下 API 访问数据:

聊天记录

GET /api/v1/chatlog?time=2023-01-01&talker=wxid_xxx&limit=100&offset=0&format=json

参数说明:

  • time
    : 时间范围,格式为 YYYY-MM-DDYYYY-MM-DD~YYYY-MM-DD
  • talker
    : 聊天对象的 ID,不知道 ID 的话也可以尝试备注名、昵称、群聊 ID等
  • limit
    : 返回记录数量限制
  • offset
    : 分页偏移量
  • format
    : 输出格式,支持 jsoncsv 或纯文本

联系人列表

GET /api/v1/contact

群聊列表

GET /api/v1/chatroom

会话列表

GET /api/v1/session

MCP

支持 MCP SSE 协议,启动 HTTP 服务后,通过 SSE Endpoint 访问服务:

GET /sse

提供了 4 个 tool 用于与 AI 助手集成:

  • chatlog
    : 查询聊天记录
  • query_contact
    : 查询联系人
  • query_chat_room
    : 查询群聊
  • query_recent_chat
    : 查询最近会话

示例

以 ChatWise 工具为例,在 设置 - 工具 下新建工具,类型为 sse,ID 为 chatlog,URL 为 http://127.0.0.1:5030/sse,勾选自动执行工具,即可使用。

部分 AI 聊天工具暂时不支持 MCP SSE 协议,可以通过 mcp-proxy 工具转发请求,以 Claude Desktop 为例,在安装好 mcp-proxy 后,将 mcp-proxy 配置到 Claude Desktopconfig.json 文件中,即可使用:

{   "mcpServers": {     "mcp-proxy": {       "command": "/Users/sarv/.local/bin/mcp-proxy",       "args": [         "http://localhost:5030/sse"       ],       "env": {}     }   },   "globalShortcut": "" }

项目链接

https://github.com/sjzar/chatlog

扫码加入技术交流群,备注「开发语言-城市-昵称

(文:GitHubStore)

快速微信聊天记录接入MCP最先出现在每时AI


扫描二维码,在手机上阅读