{"id":"bzd6661-wechat-article-for-ai","name":"wechat-article-for-ai","homepage":null,"repo_url":"https://github.com/bzd6661/wechat-article-for-ai","category":"automation","subcategories":[],"tags":["python","scraping","we-chat","mcp","markdown","browser-automation","image-downloading","batch-processing"],"what_it_does":"Converts WeChat Official Account article URLs into cleaned Markdown, downloading and localizing images (and extracting mpvoice/mpvideo media), and can be run either as a CLI or as an MCP server with exposed tools (convert_article, batch_convert).","use_cases":["Turn WeChat OA articles into readable Markdown for offline reading or publishing pipelines","Ingest articles into RAG/documentation workflows with downloaded local assets","Batch conversion of many WeChat article URLs with concurrency-controlled image downloading","AI agent workflows that call the conversion as an MCP tool"],"not_for":["Circumventing WeChat’s anti-bot measures for unauthorized scraping at scale beyond intended use","High-security environments where running a headless/stealth browser is disallowed","APIs/clients expecting a hosted SaaS endpoint (this is a local tool/server)"],"best_when":"You need local, automated conversion of WeChat OA articles to Markdown with preserved formatting, and you want to integrate that conversion into an AI agent via MCP.","avoid_when":"You cannot or should not run a browser automation stack (Camoufox/Playwright-like tooling), or you need a simple public REST API instead of running code locally.","alternatives":["Browser-based manual export and copy-to-Markdown tooling","Other WeChat article scrapers/HTML-to-Markdown converters without MCP support","Using headless CMS ingestion tools that fetch and normalize web pages (generic HTML->MD)"],"af_score":69.5,"security_score":46.8,"reliability_score":43.8,"package_type":"mcp_server","discovery_source":["github"],"priority":"high","status":"evaluated","version_evaluated":null,"last_evaluated":"2026-03-30T15:24:10.078047+00:00","interface":{"has_rest_api":false,"has_graphql":false,"has_grpc":false,"has_mcp_server":true,"mcp_server_url":null,"has_sdk":false,"sdk_languages":[],"openapi_spec_url":null,"webhooks":false},"auth":{"methods":[],"oauth":false,"scopes":false,"notes":"No authentication mechanism is described; access appears to be local tool execution only."},"pricing":{"model":null,"free_tier_exists":false,"free_tier_limits":null,"paid_tiers":[],"requires_credit_card":false,"estimated_workload_costs":null,"notes":"Open-source/local tool; no pricing details provided."},"requirements":{"requires_signup":false,"requires_credit_card":false,"domain_verification":false,"data_residency":[],"compliance":[],"min_contract":null},"agent_readiness":{"af_score":69.5,"security_score":46.8,"reliability_score":43.8,"mcp_server_quality":72.0,"documentation_accuracy":70.0,"error_message_quality":null,"error_message_notes":"README states explicit CAPTCHA detection and suggests actionable remediation (run with --no-headless). No concrete MCP error codes/schema or structured error examples are provided.","auth_complexity":100.0,"rate_limit_clarity":45.0,"tls_enforcement":80.0,"auth_strength":30.0,"scope_granularity":20.0,"dependency_hygiene":35.0,"secret_handling":70.0,"security_notes":"Security posture is mostly about local execution and scraping. README does not describe auth/secrets handling; no secret storage practices are documented. Uses stealth/anti-detection browser automation (Camoufox), which increases operational risk surface (automation tooling, potential need for manual CAPTCHA solving). Dependency hygiene is unknown from the provided content; requirements/CVE info is not shown. TLS is likely used for HTTP image downloads (implied by httpx), but explicit enforcement is not stated.","uptime_documented":0.0,"version_stability":50.0,"breaking_changes_history":50.0,"error_recovery":75.0,"idempotency_support":"false","idempotency_notes":"The CLI mentions --force/overwrite behavior, which helps reruns, but idempotency at the MCP tool level is not specified.","pagination_style":"none","retry_guidance_documented":true,"known_agent_gotchas":["Requests may fail due to rate limiting or CAPTCHA; agent workflows may need fallback to manual solving (--no-headless) or retry later","Running the MCP server and browser automation locally can be resource-intensive (concurrency/image downloading)","Because it is a scraper, upstream HTML/CSS structure changes could break parsing, leading to ParseError-like outcomes"]}}