wecom-msg
企业微信消息技能
wecom_mcp是一个 MCP tool,所有操作通过调用该 tool 完成。
⚠️ 前置条件:首次调用
wecom_mcp前,必须按wecom-preflight技能执行前置条件检查,确保工具已加入白名单。
通过 wecom_mcp call msg <接口名> '<json入参>' 与企业微信消息系统交互。
接口列表
get_msg_chat_list — 获取会话列表
使用 wecom_mcp tool 调用 wecom_mcp call msg get_msg_chat_list '{"begin_time": "2026-03-11 00:00:00", "end_time": "2026-03-17 23:59:59"}'
按时间范围查询有消息的会话列表,支持分页。参见 API 详情。
get_messages — 拉取会话消息
使用 wecom_mcp tool 调用 wecom_mcp call msg get_messages '{"chat_type": 1, "chatid": "zhangsan", "begin_time": "2026-03-17 09:00:00", "end_time": "2026-03-17 18:00:00"}'
根据会话类型和 ID 拉取指定时间范围内的消息记录,支持分页。仅支持 7 天内。参见 API 详情。
send_message — 发送文本消息
使用 wecom_mcp tool 调用 wecom_mcp call msg send_message '{"chat_type": 1, "chatid": "zhangsan", "msgtype": "text", "text": {"content": "hello world"}}'
向单聊或群聊发送文本消息。参见 API 详情。
核心规则
时间范围规则
- 格式:所有时间参数使用
YYYY-MM-DD HH:mm:ss格式 - 默认范围:用户未指定时,默认使用最近7天(当前时间往前推7天)
- 限制:开始时间不能早于当前时间的7天前,不能晚于当前时间
- 相对时间支持:支持"昨天"、"最近三天"等自动推算
chatid查找规则
- 当用户提供人名或群名而非ID时:
- 调用
get_msg_chat_list获取会话列表(时间范围与目标查询一致) - 在
chats中按chat_name匹配 - 匹配策略:
- 精确匹配唯一结果:直接使用
- 模糊匹配多个结果:展示候选列表让用户选择
- 无匹配结果:告知用户未找到
- 调用
- chat_type 判断:
get_msg_chat_list返回中不含会话类型字段,需根据上下文推断:用户明确提到「群」时使用chat_type=2,否则默认chat_type=1(单聊)
userid转username
流程:
- 调用
wecom-contact-lookup get_userlist获取用户列表 - 建立userid到username的映射关系
- 展示策略:
- 精确匹配:显示username
- 无匹配:保持显示userid
典型工作流
查看会话列表
用户query示例:
- "看看我最近一周有哪些聊天"
- "这几天谁给我发过消息"
执行流程:
- 确定时间范围(用户指定或默认最近7天)
- 调用
get_msg_chat_list获取会话列表 - 展示会话名称、最后消息时间、消息数量
- 若
has_more为true,告知用户还有更多会话可继续查看
查看聊天记录
用户query示例:
- "帮我看看和张三最近的聊天记录"
- "看看项目群里最近的消息"
执行流程:
- 确定时间范围(用户指定或默认最近7天)
- 通过 chatid查找规则 确定目标会话的
chatid和chat_type - 调用
get_messages拉取消息列表 - 调用
wecom-contact-lookup的get_userlist获取通讯录,建立 userid→姓名 映射 - 展示消息时将
userid替换为可读姓名,格式:姓名 [时间]: 内容 - 若
next_cursor不为空,告知用户还有更多消息可继续查看
发送消息
用户query示例:
- "帮我给张三发一条消息:明天会议改到下午3点"
- "在项目群里发一条消息:今天下午3点开会"
执行流程:
- 通过 chatid查找规则 确定目标会话的
chatid和chat_type - 发送前确认:向用户确认发送对象和内容(如:"即将向 张三 发送:'明天会议改到下午3点',确认发送吗?"),用户确认后再执行
- 调用
send_message发送(msgtype固定为text) - 展示发送结果
查看消息并回复
用户query示例:
- "看看张三给我发了什么,然后帮我回复收到"
执行流程:
- 先执行"查看聊天记录"流程(复用已获取的
chatid和chat_type) - 展示消息后,执行"发送消息"流程(需确认后再发送)
错误处理
- 时间范围超限:告知用户7天限制并调整为有效范围
- 会话未找到:明确告知用户未找到对应会话
- API错误:展示具体错误信息,必要时重试
- 网络问题:HTTP错误时主动重试最多3次`
More from stvlynn/qclaw-skills
qclaw-rules
|
5tarot
A reflective tarot draw for emotional support (presence-first, non-clinical, non-predictive).
2qclaw-calendar-guide
日程/日历/会议/安排管理 Skill。当用户提到任何日程相关话题时触发——包括但不限于:查看日程('明天有什么安排'、'这周有什么会')、创建日程('帮我建个日程'、'约个会'、'三点开会')、修改日程('把会议推迟到后天'、'改个时间')、取消日程('取消明天的会'、'把那个会删了')。也适用于间接意图如'帮我约个时间'、'安排一下'、'看看有没有冲突'。自动检测系统日历(Apple 日历/Outlook/Windows 日历),支持飞书、钉钉、企业微信。
2qclaw-openclaw
|
2qqbot-media
QQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
2nutritionist
Holistic nutrition guidance — food-health relationships, eating behaviors, sustainable habits, and nutritional education.
2