Labsco
MCP SERVER

WeCom Bot MCP Server

by loonghao

Post to a WeCom (WeChat Work) group from an assistant — markdown with @mentions, images, files and template cards — routed to whichever bot you name.

Notifications & Alerting to HumansVerified
Summary
One webhook per bot, and the assistant picks the room.

The multi-bot setup is what makes this more than a single-channel poster: configure an alert bot and a CI bot, and a send can name which one delivers, so notifications land in the right group without separate integrations. The @mention handling is the other convenience — it translates 'notify Alice' into the <@alice> syntax WeCom actually needs rather than leaving you to format it.

What it is

A Python server for WeCom bot webhooks: six tools that send messages, images, files and template cards to a WeChat Work group, with routing across several configured bots.

What you get
  • send_message posts text or markdown and turns an intent to notify someone into WeCom's <@userid> mention syntax — 'remind Zhang San' becomes <@zhangsan> in a markdown message
  • send_wecom_image sends an image from a local path, and send_wecom_file sends any file, each taking an optional bot_id to pick which bot delivers it
  • send_wecom_template_card_text_notice and send_wecom_template_card_news_notice send WeCom's structured template cards — a text notice or a news notice — following the fields in WeCom's template_card documentation
  • list_wecom_bots returns the configured bots with their id, name and description, so you can discover the right target before sending
  • Multi-bot routing throughout: any send takes a bot_id, and without one it uses the default bot
  • Message-type coverage from the same interface — markdown with @mentions and colors, an extended markdown with tables and lists, images by base64, file or URL, and the two card types
Requirements

A WeCom group bot webhook URL, of the form https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=..., set as WECOM_WEBHOOK_URL for a single default bot. For several bots, set WECOM_BOTS as a JSON map of bot_id to name, webhook_url and description, or one WECOM_BOT_<NAME>_URL variable per bot. Python, run from the wecom-bot-mcp-server package as its console script.

Setup effort

One command plus a key — npx -y @smithery/cli install wecom-bot-mcp-server --client claude, then supply credentials