Skip to main content
Glama
jj-cheng25

weixin-articles-mcp

by jj-cheng25

weixin-articles-mcp

Servidor MCP para leer artículos de cuentas oficiales de WeChat (微信), con salida multimodal nativa: las imágenes y los fotogramas clave de vídeo se devuelven como bloques de contenido, no como URLs.

Para uso personal/investigación. Esta herramienta solo lee URLs de artículos accesibles públicamente y no elude ninguna medida de autenticación o anti-bot. Consulta el Aviso legal antes de usarla.

License: MIT Python 3.10+ GitHub stars

Por qué existe esto

Otras herramientas que leen artículos de WeChat para LLMs devuelven una lista de URLs de imágenes: tu LLM tiene que hacer clic para verlas realmente, lo que cuesta viajes de ida y vuelta adicionales y contexto.

Este servidor devuelve las imágenes en sí. Y los fotogramas clave de vídeo. Tu LLM ve lo que tú ves, de una sola vez.

Herramienta

Texto del artículo

Imágenes

Vídeos

WebFetch (integrado)

✅ (a menudo bloqueado por anti-bot)

❌ Solo URLs

MCPs / Skills de WeChat existentes

❌ Solo URLs

weixin-articles-mcp

Bloques de imagen nativos

Fotogramas clave como bloques de imagen

Related MCP server: WeChat Article Parser

Características

  • 📰 Raspado fiable de WeChathttpx GET en Python puro, no requiere binarios de Rust ni navegadores sin interfaz gráfica

  • 🖼️ Contenido de imagen nativo — PNG/JPG devueltos como bloques Image de MCP, GIFs filtrados, limitados a 10 por artículo

  • 🎬 Gestión de vídeo para los tres tipos de incrustación:

    • Vídeos nativos de cuentas oficiales de WeChat (<iframe data-mpvid="wxv_*">): mp4 extraído de JS en línea, 8 fotogramas clave espaciados uniformemente mediante ffmpeg

    • Vídeo de Tencent (iframes v.qq.com): yt-dlp + fotogramas clave de ffmpeg

    • Canales de WeChat (视频号, <mp-common-videosnap>): metadatos completos a través de la API pública batch_get_video_snap (duración, dimensiones, portada de alta resolución, descripción completa, recuento de 'me gusta', verificación del editor) + imagen de portada. El flujo mp4 está bloqueado detrás del protocolo finder de WeChat — ver ¿Por qué no hay mp4 de Canales? a continuación

  • 🕒 Recuperación de la hora de publicación — extrae la marca de tiempo Unix var ct que otros analizadores pasan por alto

  • 🪶 Instalación mínimapip install + ffmpeg opcional para vídeo; sin Chromium, sin Rust

Instalación

# 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

Configuración

Claude Desktop / Claude Code

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

Cursor / Cline

El mismo JSON, colócalo en la configuración del servidor MCP de tu cliente.

Uso

Una vez configurado, simplemente pega una URL de un artículo de WeChat en tu conversación:

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

Tu LLM recibirá:

  • Metadatos del artículo (título, cuenta, hora de publicación, URL de portada)

  • Cuerpo completo del artículo en Markdown

  • Todas las imágenes PNG/JPG en línea como bloques de contenido de imagen nativos

  • Para cada vídeo, 8 imágenes de fotogramas clave

Referencia de herramientas

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

Devuelve una lista de bloques de contenido MCP:

  • [0] — bloque de texto: metadatos + markdown del cuerpo del artículo

  • [1..N] — bloques de imagen: imágenes del artículo (máximo 10, GIFs filtrados)

  • Para cada vídeo (máximo 3):

    • Nativo de WeChat o Tencent: un marcador de texto + 8 bloques de imagen de fotogramas clave

    • Canales de WeChat: un marcador de texto (con duración, dimensiones, recuento de 'me gusta', editor, descripción) + 1 bloque de imagen de portada de alta resolución

En caso de error, devuelve un único bloque de texto que comienza con Error:.

Hoja de ruta

  • [x] Obtención de artículos de WeChat con gestión anti-bot

  • [x] Bloques de contenido de imagen nativos

  • [x] Extracción de fotogramas clave de vídeo nativo de cuentas oficiales de WeChat

  • [x] Extracción de fotogramas clave de vídeo de Tencent

  • [x] Enriquecimiento de metadatos de Canales de WeChat (视频号) a través de la API pública

  • [ ] Subtítulos ASR mediante faster-whisper (para vídeos nativos + Tencent)

  • [ ] Búsqueda de texto completo en artículos leídos

  • [ ] Suscripción a cuentas / notificaciones de nuevos artículos

¿Por qué no hay mp4 de Canales?

Respuesta corta: los vídeos de los Canales de WeChat (视频号) en los artículos no exponen intencionadamente un flujo mp4 descargable para el acceso web público. El mp4 reside dentro del protocolo finder de WeChat, que requiere (a) una sesión de cliente de WeChat iniciada, (b) cifrado específico del finder (los primeros 128 KB del mp4 están cifrados con XOR con una clave fija), y (c) interceptar el flujo desde el cliente de PC de WeChat a nivel de red.

Cada descargador de Canales de WeChat de código abierto que existe — ltaoo/wx_channels_download, qiye45/wechatVideoDownload, putyy/res-downloader, KingsleyYau/WeChatChannelsDownloader y otros — resuelve esto con un proxy HTTPS MITM + cliente de PC de WeChat + instalación de CA raíz. Ese modelo es fundamentalmente incompatible con cómo funciona un servidor MCP (sin cliente, sin interacción del usuario, sin instalación de administrador).

Lo que hacemos en su lugar: llamar a la API pública batch_get_video_snap de WeChat (no requiere cookie ni sesión) para darle a tu LLM lo siguiente mejor: imagen de portada de alta resolución, descripción completa, duración, dimensiones, recuento de 'me gusta' y verificación del editor. Para la mayoría de los casos de uso (leer y resumir artículos), esto es suficiente para transmitir la esencia del vídeo.

Si necesitas específicamente el archivo mp4, instala una de las herramientas dedicadas anteriores junto con este MCP; se complementan entre sí.

Arquitectura

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

Contribución

Las PR son bienvenidas. Buscamos ayuda especialmente en:

  • Gestión de URLs de Canales de WeChat (视频号)

  • Resiliencia a variantes de plantillas de editores menos comunes

  • Más pruebas (diferentes estilos de artículos)

Abre un issue: https://github.com/jj-cheng25/weixin-articles-mcp/issues

Esta herramienta se proporciona solo para uso personal, educativo y de investigación.

Lo que hace esta herramienta:

  • Lee URLs de artículos de WeChat accesibles públicamente (mp.weixin.qq.com/s/...) utilizando un User-Agent de navegador estándar: el mismo contenido que cualquier usuario con un navegador web puede ver

  • Llama solo a puntos finales de la API pública de WeChat que aceptan campos de autenticación vacíos (es decir, diseñados por WeChat para ser accesibles sin inicio de sesión)

  • Aplica un intervalo mínimo predeterminado de 1 segundo entre solicitudes para evitar que la herramienta se reutilice como un rastreador de alto volumen

Lo que esta herramienta no hace:

  • Usar cookies, sesiones de inicio de sesión o cualquier forma de credencial de usuario

  • Eludir ninguna protección técnica, medida anti-bot o flujo cifrado (por ejemplo, el mp4 de los Canales de WeChat está intencionadamente no soportado — ver ¿Por qué no hay mp4 de Canales?)

  • Descifrar, realizar ingeniería inversa o eludir las protecciones a nivel de protocolo de WeChat

  • Almacenar, guardar en caché o redistribuir contenido obtenido más allá de la respuesta inmediata

Responsabilidades del usuario:

  • Respeta los Términos de Servicio de WeChat al usar esta herramienta. El uso personal/de investigación de artículos accesibles públicamente generalmente está alineado con la forma en que se pretende consumir el contenido; el raspado de alto volumen o la redistribución comercial probablemente no lo estén.

  • Respeta los derechos de autor del contenido obtenido. El contenido del artículo sigue siendo propiedad de sus autores y editores originales; esta herramienta solo lo obtiene y lo reenvía a tu LLM para su procesamiento en línea.

  • No satures mp.weixin.qq.com — mantén el uso a velocidades de lectura humana. El límite de velocidad predeterminado se establece de forma conservadora, pero puedes ajustarlo aún más configurando WEIXIN_FETCH_INTERVAL_S=2.0 (o superior) en tu entorno.

Los autores y colaboradores de este proyecto renuncian a toda responsabilidad derivada del mal uso. Al utilizar este software, aceptas la plena responsabilidad de garantizar que tu uso cumpla con las leyes aplicables y los términos de servicio de los servicios a los que se conecta.

Licencia

MIT — ver 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