Wechat Mcp

PassAudited by VirusTotal on May 11, 2026.

Overview

Type: OpenClaw Skill Name: wechat-mcp Version: 1.0.0 The skill is classified as suspicious due to the inherent risks associated with GUI automation and the explicit disabling of `pyautogui.FAILSAFE` in `server.py`. While the stated purpose of automating WeChat message sending appears legitimate, the use of `pyautogui` grants broad control over the user's desktop, including simulating mouse clicks and keyboard presses, which could lead to unintended actions if the environment changes or the script's assumptions are incorrect. The disabling of the failsafe mechanism removes a critical safety feature, increasing the risk of a runaway script. Additionally, the script saves screenshots (`verify.png`, `input_verify.png`, `result.png`) to the local directory, which could inadvertently capture and store sensitive information from the screen.

Findings (0)

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

If an agent calls this tool at the wrong time, it could send a message to the wrong WeChat chat or send content the user did not explicitly approve.

Why it was flagged

The MCP send tool only needs message text and then performs the actual send by pressing Enter in the active/current chat window, with no built-in recipient validation or confirmation step.

Skill content
"required": ["message"] ... success, err = send_message_to_current(message) ... pyautogui.press('enter')
Recommendation

Require explicit user approval before every send, show the detected recipient and exact message, add recipient allowlisting or validation, and avoid autonomous invocation for this tool.

What this means

The agent effectively receives delegated ability to send WeChat messages from the user's account through the desktop session.

Why it was flagged

The code uses the already-authenticated WeChat desktop app to send messages as the user, but it does not scope that authority to a named contact or require a human confirmation.

Skill content
wins = gw.getWindowsWithTitle("微信") ... pyperclip.copy(message) ... pyautogui.hotkey('ctrl', 'v') ... pyautogui.press('enter')
Recommendation

Clearly disclose that the active WeChat login will be used, require per-message confirmation, and limit sending to user-approved contacts or conversations.

What this means

A user may believe the skill will target a named contact, while the implemented behavior may send to whichever chat window is currently active.

Why it was flagged

The documentation describes sending to a specified contact through a search/open/send flow, but the provided server implementation exposes only a current-chat send tool and does not define send_message_to_contact.

Skill content
给指定联系人发送消息(完整流程:搜索->打开聊天->发送)
send_message_to_contact("联系人名称", "消息内容")
Recommendation

Align the documentation with the implementation, or implement and verify the contact-selection flow before sending.

What this means

Private WeChat conversation content may remain on disk after using the skill and could be exposed through backups, file sharing, or later local access.

Why it was flagged

The send workflow saves screenshots of the WeChat window, input area, and result to persistent local files, which may contain private chat content and the sent message.

Skill content
img.save(str(Path(__file__).parent / "verify.png")) ... input_img.save(str(Path(__file__).parent / "input_verify.png")) ... img.save(str(Path(__file__).parent / "result.png"))
Recommendation

Make screenshots opt-in, document exactly where they are stored, use temporary files where possible, and provide cleanup or redaction controls.

What this means

Users may install different future package versions than the author tested.

Why it was flagged

The skill depends on multiple PyPI packages using lower-bound version constraints rather than a locked set of exact versions; these dependencies are expected for GUI automation but still affect install provenance.

Skill content
pyautogui>=0.9.54
pygetwindow>=0.0.9
pytesseract>=0.3.13
Pillow>=12.1.0
pyperclip>=1.11.0
opencv-python>=4.13.0
Recommendation

Pin exact dependency versions or provide a lockfile and a clear installation specification.