WeCom MCP Server

AI assistant for Enterprise WeChat to manage meetings, contacts, and tasks.

README.md

WeCom MCP - 企业微信 AI 助手

基于 Laravel + MCP 协议构建的企业微信 AI 助手。用户通过自然语言指令,由 AI 自动识别意图并调用企业微信 API 完成操作。

"帮我明天下午3点和张三开个需求评审会" → AI 自动搜索联系人 → 创建会议 → 返回会议信息

功能特性

  • 自然语言驱动 — 用口语化指令完成企微操作,无需学习 API
  • MCP Tool 架构 — 基于 Model Context Protocol,可扩展的工具体系
  • 多模型支持 — Ollama / Claude / OpenAI / DeepSeek 一键切换
  • 拼音智能匹配 — 支持同音字、首字母缩写匹配联系人("王伟" = "汪伟")
  • 用户记忆 — 自动记住用户偏好和习惯,个性化响应
  • 个性化 Profile — 自定义 AI 名字、人设、欢迎语,进入会话自动问候
  • 定时任务 — 一次性("30分钟后提醒我")和周期性("每天9点发日报提醒")定时消息
  • 外部联系人管理 — 客户信息同步、搜索、回调实时更新,支持按时间范围查询
  • 聊天记录智能分析 — 基于会话内容存档,AI 自动提取待办/决策/时间节点,每日生成工作日报推送
  • Claude Code Skills — 内置 API 文档查询 Skill,辅助开发

已支持的 MCP Tools

分类 Tool 说明
会议 CreateMeetingTool 创建在线视频会议
QueryMeetingsTool 查询会议列表
GetMeetingInfoTool 获取会议详情
UpdateMeetingTool 修改会议
CancelMeetingTool 取消会议
日程 CreateCalendarTool 创建日历(私人/公共/企业)
QueryCalendarsTool 查询日历列表
CreateScheduleTool 创建日程,多日历时自动推荐
QuerySchedulesTool 查询日程列表
GetScheduleDetailTool 获取日程详情
CancelScheduleTool 取消日程
会议室 QueryMeetingRoomsTool 查询会议室列表
BookMeetingRoomTool 预定会议室
QueryRoomBookingsTool 查询预定记录
CancelRoomBookingTool 取消预定
群聊 CreateGroupChatTool 创建群聊
UpdateGroupChatTool 修改群聊(改名/换群主/增减成员)
GetGroupChatTool 获取群聊详情
QueryGroupChatsTool 查询我创建/参与的群聊
SendGroupMessageTool 推送消息到群聊(支持 @成员)
联系人 SearchContactsTool 搜索内部联系人(拼音四级匹配)
外部联系人 SearchExternalContactsTool 搜索外部联系人/客户(拼音四级匹配 + 备注名)
ListExternalContactsTool 列出外部联系人,支持按员工和时间范围筛选
记忆 SaveMemoryTool 保存用户偏好/习惯
DeleteMemoryTool 删除记忆
个性化 SetProfileTool 设置 AI 名字/人设/欢迎语等
GetProfileTool 查看当前个性化配置
定时任务 CreateOnetimeTaskTool 创建一次性定时任务("30分钟后提醒我")
CreateRecurringTaskTool 创建周期性定时任务(每天/工作日/每周/每月)
QueryScheduledTasksTool 查询定时任务列表
CancelScheduledTaskTool 取消定时任务
文档 CreateDocumentTool 创建在线文档/表格/智能表格
GetDocumentInfoTool 获取文档基础信息
ShareDocumentTool 获取文档分享链接
RenameDocumentTool 重命名文档
DeleteDocumentTool 删除文档
GetDocumentContentTool 读取文档内容(提取为纯文本)
UpdateDocumentContentTool 编辑文档内容(追加/替换/插入)

聊天记录智能分析

基于企微会话内容存档,每日自动分析员工聊天记录,提取结构化工作洞察并生成日报推送。

分层知识架构:

Layer 2: 用户日报(每人每天一份,推送给用户)
Layer 1: 对话摘要(每对话对每天一条,AI 分析压缩)
Layer 0: 原始聊天记录(外部 MySQL,按需回溯)

5 类洞察提取:

类型 说明 示例
待办事项 对话中的任务分配和工作请求 "帮我看一下登录Bug"
重要决策 双方达成一致的结论 "就用方案B吧"
关键时间节点 提到的截止日期 "周五前提测"
未回复检测 工作问题未得到回应 问了接口文档位置没回复
工作总结 对话核心内容概要 今日主要讨论了上线计划

待办生命周期管理:

open → completed(对话中确认完成)
open → expired(超期未完成)→ reminded(日报提醒)
reminded → completed / ignored / open(用户回复操作)

使用方式:

php artisan chat:analyze-daily                     # 分析昨天的聊天记录
php artisan chat:analyze-daily --date=2026-03-15   # 分析指定日期
php artisan chat:analyze-daily --backfill          # 冷启动,回溯分析近 N 天
php artisan chat:push-reports                      # 推送日报给员工
php artisan chat:push-reports --force              # 强制推送(忽略推送日限制)

环境要求

  • PHP >= 8.2
  • Composer
  • MySQL
  • AI 模型(任选其一):
    • Ollama 本地部署(推荐开发环境,默认 qwen3:8b)
    • Claude API Key(Anthropic
    • OpenAI API Key
    • DeepSeek API Key

快速开始

1. 安装

git clone https://github.com/bangbangda/wecommcp.git
cd wecom-mcp
composer install
cp .env.example .env
php artisan key:generate
php artisan migrate

2. 配置 AI 模型

编辑 .env,选择一个 AI 驱动:

# 方式一:Ollama 本地模型(无需 API Key)
AI_DRIVER=ollama
OLLAMA_BASE_URL=http://localhost:11434/v1
OLLAMA_MODEL=qwen3:8b

# 方式二:Claude
AI_DRIVER=anthropic
ANTHROPIC_API_KEY=sk-ant-xxx

# 方式三:OpenAI
AI_DRIVER=openai
OPENAI_API_KEY=sk-xxx

# 方式四:DeepSeek
AI_DRIVER=deepseek
DEEPSEEK_API_KEY=sk-xxx

3. 配置企业微信

企业微信管理后台创建自建应用,获取以下信息填入 .env

WECOM_CORP_ID=your_corp_id
WECOM_AGENT_SECRET=your_agent_secret
WECOM_AGENT_ID=your_agent_id
WECOM_AGENT_TOKEN=your_callback_token
WECOM_AGENT_AES_KEY=your_callback_aes_key

# 通讯录同步(可选)
WECOM_CONTACT_SECRET=your_contact_secret

4. 配置聊天分析(可选)

如果需要使用聊天记录智能分析功能,配置外部聊天记录数据库连接:

CHAT_RECORDS_DB_HOST=127.0.0.1
CHAT_RECORDS_DB_PORT=3306
CHAT_RECORDS_DB_DATABASE=chat_records
CHAT_RECORDS_DB_USERNAME=root
CHAT_RECORDS_DB_PASSWORD=

初始化分析配置:

php artisan db:seed --class=ChatAnalysisConfigSeeder

5. 同步通讯录

php artisan wecom:sync-contacts              # 同步内部通讯录
php artisan wecom:sync-external-contacts     # 同步外部联系人

6. 开始对话

php artisan chat

输入自然语言指令即可:

You: 帮我明天下午两点和张三开个项目评审会
AI: 我来帮你创建会议。先搜索一下"张三"...
    找到联系人张三(产品部)。
    已创建会议「项目评审会」:
    - 时间:明天 14:00-15:00
    - 参会人:张三
    - 会议链接:https://meeting.tencent.com/xxx

架构概览

用户(语音/文字)
    |
    v
+-------------+     +------------------+     +-----------------+
|   接入层     | --> |   AI 编排层       | --> |  MCP Tool 执行层 |
|  企微

Tools 5

CreateMeetingToolCreates an online video meeting.
SearchContactsToolSearches internal contacts using Pinyin matching.
CreateOnetimeTaskToolCreates an one-time reminder task.
BookMeetingRoomToolBooks a meeting room.
SendGroupMessageToolSends a message to a group chat with support for @mentions.

Environment Variables

WECOM_CORP_IDrequiredEnterprise WeChat Corp ID
WECOM_AGENT_SECRETrequiredEnterprise WeChat Agent Secret
AI_DRIVERrequiredAI model driver (ollama, anthropic, openai, deepseek)
ANTHROPIC_API_KEYAPI key for Claude

Try it

Help me schedule a project review meeting with Zhang San for tomorrow at 3 PM.
Search for the contact information of our product manager.
Remind me to send the daily report in 30 minutes.
Book a meeting room for the team sync tomorrow morning.
Send a message to the project group chat notifying everyone about the new deadline.

Frequently Asked Questions

What are the key features of WeCom MCP?

Natural language command processing for Enterprise WeChat operations. Intelligent Pinyin-based contact matching for internal and external contacts. Multi-model support including Ollama, Claude, OpenAI, and DeepSeek. Automated meeting, calendar, and meeting room management. Chat history analysis to extract tasks, decisions, and daily summaries.

What can I use WeCom MCP for?

Automating meeting scheduling by searching contacts and booking rooms via natural language. Generating daily work reports by analyzing team chat history for tasks and decisions. Setting up recurring reminders for daily stand-ups or report submissions. Managing group communications and document sharing directly through AI prompts.

How do I install WeCom MCP?

Install WeCom MCP by running: git clone https://github.com/bangbangda/wecommcp.git && cd wecom-mcp && composer install

What MCP clients work with WeCom MCP?

WeCom MCP works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep WeCom MCP docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Open Conare