Skip to main content
Glama
jj-cheng25

weixin-articles-mcp

by jj-cheng25

weixin-articles-mcp

MCP-Server zum Lesen von WeChat (微信) Official Account-Artikeln mit nativer multimodaler Ausgabe — Bilder und Video-Keyframes werden als Inhaltsblöcke zurückgegeben, nicht als URLs.

Für den persönlichen/wissenschaftlichen Gebrauch. Dieses Tool liest nur öffentlich zugängliche Artikel-URLs und umgeht keinerlei Authentifizierungs- oder Anti-Bot-Maßnahmen. Siehe Haftungsausschluss vor der Verwendung.

License: MIT Python 3.10+ GitHub stars

Warum existiert dieses Tool?

Andere Tools, die WeChat-Artikel für LLMs lesen, geben eine Liste von Bild-URLs zurück — Ihr LLM muss darauf klicken, um sie tatsächlich zu sehen, was zusätzliche Roundtrips und Kontext kostet.

Dieser Server gibt die Bilder selbst zurück. Und die Video-Keyframes. Ihr LLM sieht, was Sie sehen, auf einen Schlag.

Tool

Artikeltext

Bilder

Videos

WebFetch (integriert)

✅ (oft durch Anti-Bot blockiert)

❌ Nur URLs

Bestehende WeChat MCPs / Skills

❌ Nur URLs

weixin-articles-mcp

Native Bildblöcke

Keyframes als Bildblöcke

Related MCP server: WeChat Article Parser

Funktionen

  • 📰 Zuverlässiges WeChat-Scraping — reines Python httpx GET, kein Rust-Binary oder Headless-Browser erforderlich

  • 🖼️ Native Bildinhalte — PNG/JPG werden als MCP Image-Blöcke zurückgegeben, GIFs gefiltert, auf 10 pro Artikel begrenzt

  • 🎬 Videoverarbeitung für alle drei Einbettungstypen:

    • WeChat Official Account native Videos (<iframe data-mpvid="wxv_*">): mp4 aus Inline-JS extrahiert, 8 gleichmäßig verteilte Keyframes via ffmpeg

    • Tencent Video (v.qq.com iframes): yt-dlp + ffmpeg Keyframes

    • WeChat Channels (视频号, <mp-common-videosnap>): vollständige Metadaten über die öffentliche batch_get_video_snap API (Dauer, Abmessungen, hochauflösendes Cover, vollständige Beschreibung, Like-Anzahl, Verifizierung des Herausgebers) + Cover-Bild. Der mp4-Stream ist hinter dem WeChat-Finder-Protokoll gesperrt — siehe Warum kein Channels mp4? unten

  • 🕒 Wiederherstellung der Veröffentlichungszeit — extrahiert den Unix-Zeitstempel var ct, den andere Parser übersehen

  • 🪶 Minimale Installationpip install + optional ffmpeg für Videos; kein Chromium, kein Rust

Installation

# Core (article + images)
pip install weixin-articles-mcp

# With video keyframe support
pip install "weixin-articles-mcp[video]"
brew install ffmpeg   # or apt install ffmpeg on Linux

Konfiguration

Claude Desktop / Claude Code

{
  "mcpServers": {
    "weixin-articles": {
      "command": "weixin-articles-mcp"
    }
  }
}

Cursor / Cline

Verwenden Sie dasselbe JSON und fügen Sie es in die MCP-Server-Konfiguration Ihres Clients ein.

Verwendung

Sobald es konfiguriert ist, fügen Sie einfach eine WeChat-Artikel-URL in Ihre Konversation ein:

Read https://mp.weixin.qq.com/s/cexkyzQBRDG3uIF6g5cEbQ

Ihr LLM erhält:

  • Artikel-Metadaten (Titel, Account, Veröffentlichungszeit, Cover-URL)

  • Vollständigen Artikeltext in Markdown

  • Alle Inline-PNG/JPG-Bilder als native Bildinhaltsblöcke

  • Für jedes Video 8 Keyframe-Bilder

Tool-Referenz

read_article(url: str) -> list[content_block]

Gibt eine Liste von MCP-Inhaltsblöcken zurück:

  • [0] — Textblock: Metadaten + Artikeltext-Markdown

  • [1..N] — Bildblöcke: Artikelbilder (max. 10, GIFs gefiltert)

  • Für jedes Video (max. 3):

    • WeChat-nativ oder Tencent: ein Textmarker + 8 Keyframe-Bildblöcke

    • WeChat Channels: ein Textmarker (mit Dauer, Abmessungen, Like-Anzahl, Herausgeber, Beschreibung) + 1 hochauflösender Cover-Bildblock

Bei einem Fehler wird ein einzelner Textblock zurückgegeben, der mit Error: beginnt.

Roadmap

  • [x] WeChat-Artikelabruf mit Anti-Bot-Behandlung

  • [x] Native Bildinhaltsblöcke

  • [x] Extraktion von Keyframes für native WeChat Official Account-Videos

  • [x] Extraktion von Keyframes für Tencent Video

  • [x] Anreicherung von WeChat Channels (视频号)-Metadaten über öffentliche API

  • [ ] ASR-Untertitel via faster-whisper (für native + Tencent-Videos)

  • [ ] Volltextsuche über gelesene Artikel

  • [ ] Account-Abonnement / Benachrichtigungen für neue Artikel

Warum kein Channels mp4?

Kurze Antwort: WeChat Channels (视频号)-Videos in Artikeln legen absichtlich keinen herunterladbaren mp4-Stream für den öffentlichen Webzugriff offen. Das mp4 befindet sich innerhalb des WeChat-Finder-Protokolls, was (a) eine eingeloggte WeChat-Clientsitzung, (b) Finder-spezifische Verschlüsselung (die ersten 128 KB des mp4 sind mit einem festen Schlüssel XOR-verschlüsselt) und (c) das Abfangen des Streams vom WeChat PC-Client auf Netzwerkebene erfordert.

Jeder Open-Source WeChat Channels-Downloader, der existiert — ltaoo/wx_channels_download, qiye45/wechatVideoDownload, putyy/res-downloader, KingsleyYau/WeChatChannelsDownloader und andere — löst dies mit einem MITM HTTPS-Proxy + WeChat PC-Client + Root-CA-Installation. Dieses Modell ist grundlegend inkompatibel mit der Funktionsweise eines MCP-Servers (kein Client, keine Benutzerinteraktion, keine Admin-Installation).

Was wir stattdessen tun: Wir rufen die öffentliche batch_get_video_snap API von WeChat auf (kein Cookie oder Sitzung erforderlich), um Ihrem LLM das nächstbeste zu bieten — hochauflösendes Cover-Bild, vollständige Beschreibung, Dauer, Abmessungen, Like-Anzahl und Verifizierung des Herausgebers. Für die meisten Anwendungsfälle (Lesen und Zusammenfassen von Artikeln) reicht dies aus, um den Inhalt des Videos zu vermitteln.

Wenn Sie speziell die mp4-Datei benötigen, installieren Sie eines der oben genannten dedizierten Tools zusätzlich zu diesem MCP — sie ergänzen sich gegenseitig.

Architektur

src/weixin_articles_mcp/
├── server.py     # FastMCP entrypoint, tool registration
├── fetcher.py    # httpx GET with browser UA
├── parser.py     # WeChat DOM extraction (BeautifulSoup + lxml)
├── markdown.py   # HTML → Markdown (markdownify subclass)
└── media.py      # Image download + video download/keyframe extraction

Mitwirken

Pull Requests sind willkommen. Wir suchen insbesondere Hilfe bei:

  • Behandlung von WeChat Channels (视频号)-URLs

  • Widerstandsfähigkeit gegenüber Vorlagenvarianten von weniger verbreiteten Herausgebern

  • Mehr Test-Fixtures (verschiedene Artikelstile)

Öffnen Sie ein Issue: https://github.com/jj-cheng25/weixin-articles-mcp/issues

Haftungsausschluss

Dieses Tool wird nur für persönliche, pädagogische und wissenschaftliche Zwecke bereitgestellt.

Was dieses Tool tut:

  • Liest öffentlich zugängliche WeChat-Artikel-URLs (mp.weixin.qq.com/s/...) unter Verwendung eines Standard-Browser-User-Agents — denselben Inhalt, den jeder Benutzer mit einem Webbrowser sehen kann

  • Ruft nur öffentliche WeChat-API-Endpunkte auf, die leere Authentifizierungsfelder akzeptieren (d. h. von WeChat so konzipiert, dass sie ohne Login erreichbar sind)

  • Erzwingt ein standardmäßiges Mindestintervall von 1 Sekunde zwischen Anfragen, um zu verhindern, dass das Tool als hochvolumiger Crawler zweckentfremdet wird

Was dieses Tool nicht tut:

  • Cookies, Login-Sitzungen oder irgendeine Form von Benutzeranmeldeinformationen verwenden

  • Technische Schutzmaßnahmen, Anti-Bot-Maßnahmen oder verschlüsselte Streams umgehen (z. B. wird WeChat Channels mp4 absichtlich nicht unterstützt — siehe Warum kein Channels mp4?)

  • WeChats protokollbasierte Schutzmaßnahmen entschlüsseln, zurückentwickeln oder umgehen

  • Abgerufene Inhalte über die unmittelbare Antwort hinaus speichern, zwischenspeichern oder weiterverbreiten

Verantwortlichkeiten des Benutzers:

  • Respektieren Sie die Nutzungsbedingungen von WeChat, wenn Sie dieses Tool verwenden. Die persönliche/wissenschaftliche Nutzung öffentlich zugänglicher Artikel entspricht im Allgemeinen der Art und Weise, wie der Inhalt konsumiert werden soll; hochvolumiges Scraping oder kommerzielle Weiterverbreitung wahrscheinlich nicht.

  • Respektieren Sie das Urheberrecht der abgerufenen Inhalte. Der Artikelinhalt bleibt Eigentum seiner ursprünglichen Autoren und Herausgeber; dieses Tool ruft ihn lediglich ab und leitet ihn zur Inline-Verarbeitung an Ihr LLM weiter.

  • Überfluten Sie mp.weixin.qq.com nicht — halten Sie die Nutzung auf menschlichem Lesetempo. Das Standard-Ratenlimit ist konservativ eingestellt, aber Sie können es weiter verschärfen, indem Sie WEIXIN_FETCH_INTERVAL_S=2.0 (oder höher) in Ihrer Umgebung festlegen.

Die Autoren und Mitwirkenden dieses Projekts lehnen jegliche Haftung ab, die sich aus Missbrauch ergibt. Durch die Nutzung dieser Software akzeptieren Sie die volle Verantwortung dafür, sicherzustellen, dass Ihre Nutzung den geltenden Gesetzen und den Nutzungsbedingungen der Dienste, mit denen sie verbunden ist, entspricht.

Lizenz

MIT — siehe LICENSE.

Install Server
A
license - permissive license
A
quality
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Read WeChat public account articles via MCP. 99.89% anti-scraping success, 50-87% token compression.

  • Multimodal video analysis MCP — transcription, vision, and OCR for any video URL.

  • Jina AI Reader/Search MCP — turn any URL into clean LLM-ready markdown, plus web search.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jj-cheng25/weixin-articles-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server