用 Codex 控制微信:从 MCP 配置到自动发消息、发文件和聊天记录整理
正文
最近我折腾了一件比较有意思的事:让 Codex 直接控制我电脑上的微信。
效果是什么?不是“让 AI 在旁边告诉你怎么点”,而是我在 Codex 里直接说:
发一条消息给文件传输助手:测试一下 MCP 是否可用
Codex 就能调用本地 MCP 工具,把消息发到微信的文件传输助手。再比如:
把桌面上的 Graduation-Project.rar 发给文件传输助手
它会先检查文件是否存在,再切到文件传输助手,最后调用发送文件工具完成发送。
这篇文章就把整个过程整理出来:MCP 是什么、wxauto-mcp 做了什么、Codex 怎么配置、能实现哪些功能,以及踩坑后我总结出来的配置方式。
先说 MCP 是什么
MCP 的全称是 Model Context Protocol,可以把它理解成“AI 和外部工具之间的通用插座”。
没有 MCP 的时候,AI 主要是在聊天框里回答问题;有了 MCP 之后,AI 可以调用你本地或远程暴露出来的工具。比如查数据库、读文档、操作浏览器、调用设计工具,或者像本文这样操作微信。
OpenAI 的 Codex 文档里提到,MCP 可以把模型连接到工具和上下文,让 Codex 访问第三方文档或开发工具。Codex 支持本地 STDIO 类型的 MCP Server,也支持 HTTP 类型的 MCP Server。也就是说,只要有人把微信自动化能力封装成 MCP Server,Codex 就能把它当成工具来用。
本文用到的就是开源项目 cluic/wxauto-mcp。
项目地址:
https://github.com/cluic/wxauto-mcp
整体技术架构
这套方案的核心链路如下:
如果博客园不渲染 Mermaid,可以换成下面这张文字版:
用户自然语言
↓
Codex
↓ MCP
wxauto-mcp 本地服务
↓
wxautox4
↓
Windows 微信客户端
↓
发消息 / 发文件 / 读会话 / 整理聊天记录
这里面每一层的作用是:
- Codex:理解我的自然语言,并决定调用哪个工具。
- MCP:把本地工具标准化暴露给 Codex。
- wxauto-mcp:把微信自动化封装成 MCP 工具。
- wxautox4:实际操作 Windows 微信客户端。
- 微信客户端:必须在本机登录,并且窗口不能长期最小化。
能实现什么功能
wxauto-mcp 官方 README 里列了 27 个工具。我本机实际接入后,也能看到 27 个工具,大致可以分成这些类型:
1. 消息相关
可以发送文本消息、读取当前聊天消息、读取历史消息、获取下一个有新消息的会话,也可以批量发送消息。
常见用法:
发一条消息给文件传输助手:测试一下 MCP 是否可用
帮我读取我和 wxauto 的聊天记录,并整理成 Markdown 文件
2. 会话相关
可以获取微信会话列表、筛选未读会话、获取最近群聊、切换到指定聊天窗口。
我实际使用时发现,最好先切换聊天窗口,再发送消息。比如:
先切换到文件传输助手,再发送:测试一下 MCP 是否可用
这样比直接指定联系人更稳。因为有时候接口返回“发送成功”,但实际窗口焦点没完全对上。
3. 文件相关
可以发送文件、发送图片、发送目录下的所有文件,也可以先检查文件是否存在。
我实测过:
帮我把桌面上的 Graduation-Project.rar 发给文件传输助手
流程是:
检查文件存在
↓
切换到文件传输助手
↓
发送文件
↓
读取当前聊天记录确认
4. 联系人和好友请求
可以获取好友列表、获取当前聊天信息、添加好友、接受好友请求。
这类能力更敏感,建议只用于自己的微信管理,不建议做陌生人批量添加或骚扰式营销。
5. 状态检查
可以检查微信是否在线、wxautox4 是否已激活、MCP 工具列表是否正常。
这几个工具非常适合排错:
检查微信 MCP 状态
检查 wxautox4 是否激活
列出当前可用的微信工具
环境准备
我这里使用的是 Windows 环境。
基础要求:
- Windows 10 或 Windows 11
- Python 3.9+
- Windows 微信客户端已登录
wxautox4已激活- Codex 已安装并可正常使用
wxauto-mcp 官方 README 也写了类似要求:Windows、Python 3.9+、微信已登录、wxautox4 激活。
我个人建议直接使用 Python 3.13。原因是新版 wxautox4 对新 Python 兼容更好;如果你机器上同时装了 Python 3.9 和 3.13,建议 MCP 这套单独用 3.13,避免库版本互相影响。
先查看本机 Python:
py -0p
如果能看到类似:
-V:3.13 C:\Users\你的用户名\AppData\Local\Programs\Python\Python313\python.exe
-V:3.9 C:\Users\你的用户名\AppData\Local\Programs\Python\Python39\python.exe
就说明本机有多个 Python 版本。
安装 wxautox4 和 wxauto-mcp
使用 Python 3.13 安装:
py -3.13 -m pip install wxautox4 wxauto-mcp
检查 wxautox4 状态:
py -3.13 -m wxautox4 -k
如果显示:
wxautox状态:已激活
说明授权正常。
如果没有激活,需要先按你自己的授权方式激活。这里不建议修改本地代码绕过授权,因为这会带来法律和稳定性问题。做工具类服务,长期看最好走干净路线。
生成 MCP 配置
wxauto-mcp 可以生成配置文件:
wxauto-mcp --config
它会生成类似 Claude、Cursor 可用的 MCP 配置。Codex 这边我们可以直接写进 config.toml。
Codex 官方文档说明,MCP 配置默认放在:
~/.codex/config.toml
在 Windows 上通常是:
C:\Users\你的用户名\.codex\config.toml
打开这个文件,加入:
[mcp_servers.wxauto]
command = 'C:\Users\你的用户名\AppData\Local\Programs\Python\Python313\python.exe'
args = ["-m", "wxauto_mcp.server"]
startup_timeout_sec = 120
注意把路径改成你自己的 Python 3.13 路径。
如果你不确定路径,可以运行:
py -0p
找到 Python 3.13 对应的 python.exe。
重启 Codex
配置写完以后,需要重启 Codex,或者新开一个 Codex 线程。
原因是 MCP 工具通常不是当前聊天里实时热加载的。新线程启动后,Codex 才能读取新的 config.toml,把 wxauto 的工具加载进来。
重启后,可以让 Codex 做一个状态检查:
检查微信 MCP 是否可用
如果正常,会看到类似:
is_online: true
is_activated: true
第一次测试:发消息给文件传输助手
最简单的测试是发消息到文件传输助手。
我推荐用两步法:
请先切换到文件传输助手,然后发送:MCP 测试
或者直接说:
发一条消息给文件传输助手:测试一下 MCP 是否可用
如果你想更稳,可以让 Codex 发送后再读回聊天记录:
发一条消息给文件传输助手:测试一下 MCP 是否可用。发送后读回当前聊天记录确认。
我自己的经验是:微信自动化偶尔会出现“工具返回成功,但前台窗口消息没有落下”的情况。所以我现在会让 Codex 形成固定流程:
切换聊天窗口
↓
发送消息或文件
↓
读取当前聊天记录确认
这个流程会比只调用一次发送工具靠谱很多。
第二次测试:发送文件
比如把桌面文件发送到文件传输助手:
帮我把桌面上的 Graduation-Project.rar 发给文件传输助手
建议让 Codex 先检查文件存在:
先确认 C:\Users\你的用户名\Desktop\Graduation-Project.rar 是否存在,再发给文件传输助手,最后读回消息确认。
一次成功的流程应该是:
文件存在
切换成功
发送成功
聊天记录里出现文件消息

这个功能很适合日常把代码压缩包、截图、文档、日志传到手机微信。
第三次测试:整理聊天记录
还可以让 Codex 读取某个会话的聊天记录,然后整理成 Markdown 文件。
例如:
帮我获取我在微信中我和 wxauto 的聊天记录,整理到 md 文件
Codex 会做:
切换到 wxauto 会话
读取历史消息
整理为 Markdown 表格
生成本地 .md 文件

这种能力适合:
- 整理技术沟通记录
- 备份关键聊天摘要
- 把客户需求整理成文档
- 把群聊通知提炼成待办事项
需要注意:能读取多少历史消息,取决于微信当前窗口加载了多少,以及 wxauto-mcp 能拿到多少。不是所有很久以前的聊天都一定能一次性读全。
常见问题和排错
1. Codex 看不到微信工具
检查:
C:\Users\你的用户名\.codex\config.toml
是否有:
[mcp_servers.wxauto]
command = '你的 Python 路径'
args = ["-m", "wxauto_mcp.server"]
然后重启 Codex 或新开线程。
2. wxautox4 未激活
运行:
py -3.13 -m wxautox4 -k
如果显示未激活,需要先解决授权问题。MCP 服务能启动,不代表微信操作一定能成功;底层 wxautox4 没激活时,很多工具会失败。
3. Python 版本混乱
如果你电脑上有 Python 3.9 和 3.13,最容易出现这种问题:
你在 3.13 里激活了 wxautox4
但 Codex MCP 配置却启动了 3.9
结果就是:你以为已经激活,但 MCP 工具里检查还是未激活。
解决办法是让 config.toml 里的 command 指向已激活的 Python。
4. 发送成功但微信没看到
建议不要只调用 send_message,而是:
先 switch_chat 到指定联系人
再 send_message
最后 get_messages 读回确认
也就是让 Codex 先切窗口,再发送,再检查。
5. 微信窗口最小化或权限不足
wxauto-mcp README 里也提醒,某些操作需要微信窗口在前台可见,并且要确保 Python 有访问微信进程的权限。实测中,如果微信窗口长期最小化、系统权限不够、或者微信版本和库版本不匹配,都可能导致找不到控件。
适合做成什么服务
如果你想把这个能力做成有偿配置服务,我觉得可以分成三个层次。
基础配置服务
适合不会配置 Python、Codex、MCP 的用户。
服务内容:
- 安装 Python 3.13
- 安装
wxautox4 - 安装
wxauto-mcp - 配置 Codex 的
config.toml - 帮用户完成文件传输助手测试
可以主打:
帮你把 Codex 接入微信,让 AI 能发消息、发文件、读聊天记录。
工作流定制服务
适合已经能跑起来,但想用来提高效率的人。
可以帮他设计:
- 自动整理客户聊天记录
- 自动把文件发送给文件传输助手
- 自动读取未读会话并生成摘要
- 自动把群公告整理成待办
- 自动把某个聊天里的文件记录导出
这个部分比单纯安装更值钱,因为你卖的不是命令,而是“帮他把日常流程变简单”。
远程排错服务
很多人会卡在:
- Python 版本不对
- pip 装到了另一个环境
wxautox4未激活- Codex 读不到 MCP
- 微信窗口找不到控件
- 发消息返回成功但实际没发送
这些问题对新手很折磨,但你只要踩过一次坑,就能很快判断。
结尾
这次配置之后,我对 MCP 的理解更直观了:MCP 不是一个玄乎的概念,它就是把本地能力变成 AI 能调用的工具。
以前 AI 只能告诉我“你可以打开微信发送文件”;现在我可以直接说“把这个文件发给文件传输助手”,Codex 就能按步骤执行。
目前这套方案已经能实现:
- 发送微信文本消息
- 发送图片和文件
- 读取当前聊天消息
- 整理聊天记录到 Markdown
- 获取会话列表
- 检查微信和授权状态
并可以通过codex来进行mcp支持的的操作
![image]()
![image]()
例如
帮我绘制一只小猪并发送到指定好友
![image]()
后面如果继续扩展,还可以把它和日程、文件夹监听、自动摘要、客户需求整理结合起来,做成真正的个人工作流助手。
如果你也想配置 Codex 控制微信,或者配置过程中遇到 Python 版本、MCP、wxautox4、Codex 配置的问题,可以联系我,有偿帮配置和排错。
参考资料
- OpenAI Codex MCP 文档:https://developers.openai.com/codex/mcp
- OpenAI API MCP 文档:https://developers.openai.com/api/docs/mcp
- wxauto-mcp 项目:https://github.com/cluic/wxauto-mcp

本文记录一次完整的 Codex 控制微信实践:通过 MCP 把本地微信自动化服务接入 Codex,让 AI 能调用微信工具完成发送消息、发送文件、读取会话、整理聊天记录等操作。文章会讲清楚 MCP 是什么、整体技术架构、Windows 环境下如何安装 Python、wxautox4、wxauto-mcp,以及如何把 MCP Server 写入 Codex 的 config.toml。最后也会分享一些常见问题和适合做成有偿配置服务的方向。



浙公网安备 33010602011771号