/whatsapp-mcp
Installs github.com/lharries/whatsapp-mcp pinned to a known-good SHA, builds the Go bridge, patches the Python MCP server's name resolution against the user's iPhone/Android contacts, writes the Claude Desktop + Claude Code MCP config blocks, and installs a launchd plist that auto-starts the bridge on login.
What this skill does
- Checks platform (macOS only for v0.1.x)
- Installs Homebrew, Go ≥1.25, uv (if missing)
- Clones lharries/whatsapp-mcp and pins to upstream PR #253 fix-405 branch (asserts SHA equality — aborts on mismatch with clear remediation)
- Builds the Go bridge
- Patches the Python MCP server's dataclass
__post_init__so chat/contact/message names resolve against~/.whatsapp-mcp/contacts.json - Writes the
whatsappMCP entry to bothclaude_desktop_config.jsonand~/.claude.json(atomic, preflight-validated) - Installs a launchd plist with
WorkingDirectory+ log paths +ThrottleInterval=30(per-user filename so multi-user Macs don't clobber each other) - Runs the bridge in the foreground first so the user can see + scan the QR code, then hands off to launchd once
"✓ Connected to WhatsApp!"log line appears - Tells the user to run
/whatsapp-import-contactsto populate name resolution
How to invoke
bash ~/.whatsapp-mcp/skill-repo/install.sh
If the skill repo isn't cached locally yet (first-time run via slash command), bootstrap it:
curl -fsSL https://raw.githubusercontent.com/Adam-s-Builder-Club/whatsapp-mcp-skill/v0.1.1/install.sh | bash
Day-2 commands:
bash ~/.whatsapp-mcp/skill-repo/install.sh --update # pull latest skill release, re-patch, restart bridge
bash ~/.whatsapp-mcp/skill-repo/install.sh --reauth # bootout + re-scan QR (after 20-day session expiry or repeated auth-failure)
bash ~/.whatsapp-mcp/skill-repo/install.sh --reimport # re-import contacts from vCard + macOS Contacts.app
bash ~/.whatsapp-mcp/skill-repo/install.sh --uninstall # stop bridge, remove launchd plist, un-merge Claude config
What to tell the user before running
Before kicking off the install, surface:
- The install will request macOS permissions (Contacts via TCC, possibly Homebrew sudo on a clean Mac).
- The user will need to scan a QR code with their phone's WhatsApp app during install (Settings → Linked Devices → Link a Device).
- After install they should restart Claude Desktop / Claude Code so the new MCP server is picked up.
- Security caveat (light touch): WhatsApp MCPs are subject to the "lethal trifecta" — once installed, prompt-injected content arriving via WhatsApp could in theory cause the model to exfiltrate other messages. See the repo README for the full caveat. Don't pair this skill with auto-reply / auto-forward skills.
How to detect already-installed
If ~/.whatsapp-mcp/skill-repo/ exists and launchctl print gui/$(id -u)/com.user.$USER.whatsapp-bridge returns success, the skill is already installed. Suggest --update (latest release), --reimport (refresh contacts), or --uninstall (clean removal) instead of re-running install.
After install
Recommend the user immediately run /whatsapp-import-contacts so chat/contact names resolve against their real address book instead of showing raw phone numbers like 919949938166@s.whatsapp.net.