weixin-articles-mcp
MCP server for reading WeChat (微信) Official Account articles, with native multimodal output — images and video keyframes returned as content blocks, not URLs.
For personal/research use. This tool reads only publicly accessible article URLs and does not bypass any authentication or anti-bot measures. See Disclaimer before using.
Why this exists
Other tools that read WeChat articles for LLMs return a list of image URLs — your LLM has to click through to actually see them, costing extra round-trips and context.
This server returns the images themselves. And the video keyframes. Your LLM sees what you see, in one shot.
| Tool | Article text | Images | Videos |
|---|---|---|---|
WebFetch (built-in) |
✅ (often blocked by anti-bot) | ❌ URLs only | ❌ |
| Existing WeChat MCPs / Skills | ✅ | ❌ URLs only | ❌ |
| weixin-articles-mcp | ✅ | ✅ Native image blocks | ✅ Keyframes as image blocks |
Features
- 📰 Reliable WeChat scraping — pure Python
httpxGET, no Rust binary or headless browser required - 🖼️ Native image content — PNG/JPG returned as MCP
Imageblocks, GIFs filtered, capped at 10 per article - 🎬 Video handling for all three embed types:
- WeChat Official Account native videos (
<iframe data-mpvid="wxv_*">): mp4 extracted from inline JS, 8 evenly-spaced keyframes via ffmpeg - Tencent Video (
v.qq.comiframes): yt-dlp + ffmpeg keyframes - WeChat Channels (视频号,
<mp-common-videosnap>): full metadata via the publicbatch_get_video_snapAPI (duration, dimensions, hi-res cover, full description, like count, publisher verification) + cover image. mp4 stream is locked behind WeChat's finder protocol — see Why no Channels mp4? below
- WeChat Official Account native videos (
- 🕒 Publish time recovery — extracts
var ctUnix timestamp that other parsers miss - 🪶 Minimal install —
pip install+ optionalffmpegfor video; no Chromium, no Rust






