WeChat MCP
Use the schema for routine calls; this progressive disclosure guide adds media, setup/recovery and unfamiliar result details, not a per-send reading ritual.
First safe action
{"action":"check","input":{},"reasoning":"find WeChat conversations"}
Without a complete current notification, recover the needed content using
read with an exact user_id from check, read, contacts, or a current
notification. For reply, use an inbound message_id from read, search, or
a current notification's structured preview (recent_messages/
latest_incoming); never guess or invent one. When a CURRENT notification
carries the complete required message and exact id, do not call check/read merely
to reread that identical content or to re-obtain an id already present there.
search matches inbox bodies by regex; it cannot prove that an outgoing reply
is absent.
Calls require
action, closed action-owned input, and reasoning; optional summarize is
boolean. The advertised schema owns the action catalog and validation.
External effects and recovery
send/reply are real external side effects: obtain authority and verify recipient
and content. Success is provider acceptance, not delivery (delivery_confirmed
is false); never replay an accepted request. reply cannot fall back to a new
recipient if its inbound target or sender is missing.
media_path is a file inside the allowed working directory. Text precedes media;
partial results or uncertain errors require reconciliation, not whole-request
replay. A missing local sent record does not prove nothing was accepted. Read
operations for result/read-state limits and
media for paths, validation and upload stages.
getUpdates has one consumer per bot account. The per-account lock refuses a
second poller; do not delete its lockfile or start another. A refresh, worker
failure, or recovery event is a lifecycle fact, not by itself a reason to reread
a complete current notification; call read to reconcile only when the
inbox/sent history you actually need is missing or uncertain after such an
event, not as a routine step before every reply. Local history is context, not
a delivery receipt.
Login, configuration and credential replacement require the owner's setup
authorization. Avatar sessions must not reconfigure this MCP. Never share the
admin login QR, token or credentials. See setup/recovery;
host addon activation remains owned by mcp-manual.
Settings SHOW
settings takes input={} and returns the startup snapshot without writing or
rereading owner files. Five sensitive rows redact both current and default;
only poll_interval is displayed. An unavailable row fails the whole inventory.
SHOW grants no configuration authority. Each stable anchor routes directly:
setting-config-path
Resolved config source.
setting-base-url
Endpoint precedence.
setting-poll-interval
Polling interval/default.
setting-allowed-users
Inbound allow-list.
setting-bot-token
Login secret.
setting-user-id
Backend identity.
Sidecars ship with the package but are not embedded in manual; follow the
relative links only when their detail is needed.