Skip to main content
Glama
eeshsaxena

whatsapp-mcp-plus

by eeshsaxena

whatsapp-mcp-plus

Un servidor MCP de WhatsApp seguro y sin configuración. Solo lectura y seguro por defecto.

Conecta tu WhatsApp personal a un cliente MCP (Claude Desktop, Cursor, Claude Code) para que tu IA pueda buscar, leer, resumir y, cuando lo permitas, actuar en tu WhatsApp, con salvaguardas que mantienen tu cuenta a salvo.

Este es un sucesor mantenido y de binario único del (ahora abandonado) lharries/whatsapp-mcp, reconstruido en TypeScript sobre Baileys con una capa de seguridad que nunca tuvo.

⚠️ Lee el aviso de seguridad de cuenta antes de usarlo. Esto utiliza un cliente de WhatsApp no oficial. Si se usa con descuido, puede hacer que tu número sea baneado. Esta herramienta está diseñada para minimizar ese riesgo, pero no puede eliminarlo.

WhatsApp Rewind, desde tus propios chats

Pídele a tu IA whatsapp_rewind para generar un conjunto de tarjetas de historia estilo Spotify-Wrapped (SVG de 1080×1920) a partir de tu historial, portada, personas principales, tu ritmo diario, emojis más usados, ranking de velocidad de respuesta y cifras:

¿Prefieres una sola tarjeta? wrapped_card escribe un SVG compartible; whatsapp_wrapped imprime una tarjeta en terminal. También: response_leaderboard (a quién respondes más rápido / a quién dejas en visto más tiempo), chat_stats (por chat, con tiempos de respuesta), top_words y export_chat.

Related MCP server: wa-bridge

Por qué esto en lugar del original

original (abandonado)

whatsapp-mcp-plus

Configuración

Puente Go + servidor Python, configuración editada a mano, CGO en Windows

un solo proceso Node, un comando

Seguridad

ninguna (el README incluso advierte sobre el agujero)

solo lectura por defecto, lista blanca, límites de velocidad, confirmar antes de enviar, protección contra inyección

Herramientas

12 (lectura + envío básico)

51 (reaccionar, responder, editar, eliminar, grupos, presencia, encuestas, transcripción, análisis, gestión de chats)

Dependencias nativas

go-sqlite3 (necesita un compilador de C)

ninguna — usa el node:sqlite integrado de Node

Mantenimiento

último commit jul 2025

sí

Inicio rápido

npx whatsapp-mcp-plus

En la primera ejecución imprime un código QR en tu terminal. Abre WhatsApp en tu teléfono → Ajustes → Dispositivos vinculados → Vincular un dispositivo y escanéalo. Tu historial reciente se sincroniza en una base de datos SQLite local. Nada sale de tu máquina excepto lo que la IA lee explícitamente a través de una llamada de herramienta.

O con Docker (tanto la conexión como el servidor en un solo contenedor):

docker build -t whatsapp-mcp-plus .
docker run -it -v wamcp-data:/app/data -v wamcp-auth:/app/auth_info whatsapp-mcp-plus

Ver los análisis sin vincular

¿Quieres ver qué producen whatsapp_wrapped y response_leaderboard? Ejecuta la demo, que siembra una base de datos de ejemplo e imprime la salida real de la herramienta:

npm run demo

Conéctalo a tu cliente MCP

{
  "mcpServers": {
    "whatsapp": {
      "command": "npx",
      "args": ["-y", "whatsapp-mcp-plus"],
      "env": { "WAMCP_MODE": "read-only" }
    }
  }
}
  • Claude Desktop: claude_desktop_config.json

  • Cursor: ~/.cursor/mcp.json

Modelo de seguridad (seguro por defecto)

Los baneos de WhatsApp son principalmente conductuales. Leer es de bajo riesgo; enviar en frío o en masa es de alto riesgo. Los valores por defecto están ajustados para mantenerte en la zona segura.

Modos (WAMCP_MODE):

  • read-only (por defecto) — toda herramienta de escritura está bloqueada. Solo búsqueda/lectura/análisis.

  • assisted — se permite enviar, pero con lista blanca + límites de velocidad + confirmación.

  • unrestricted — sin restricciones (opt-in, no recomendado).

Salvaguardas (activadas por defecto fuera de unrestricted):

  • Lista blanca — solo puedes enviar mensajes a contactos existentes o a personas que te hayan escrito primero (enviar mensajes a desconocidos es el desencadenante de baneo nº 1). Anula por contacto con la herramienta allowlist_add.

  • Límite de velocidad — topes por minuto y por día, y un intervalo + jitter similar al humano entre envíos.

  • Confirmar antes de enviar — un envío devuelve un token y espera; nada sale hasta que llames a confirm_action. Esto evita que un mensaje inyectado por prompt se envíe.

  • Protección contra inyección — los mensajes entrantes que parecen instrucciones dirigidas a una IA se marcan para que el modelo los trate como datos, no como comandos.

Cada parámetro es una variable de entorno: WAMCP_ALLOWLIST_ONLY, WAMCP_REQUIRE_CONFIRM, WAMCP_RATE_PER_MINUTE, WAMCP_RATE_PER_DAY, WAMCP_MIN_GAP_MS, WAMCP_JITTER_MS.

Herramientas

51 herramientas (el original abandonado tenía 12):

Lectura: search_contacts, list_chats, list_groups, get_chat, list_messages (con rango de fechas), get_last_interaction, contact_info, get_message_context, search_messages Envío: send_message (con respuesta), send_file, send_voice_note, send_location, send_poll, send_contact Acciones de mensaje: react_to_message, edit_message, delete_message, mark_read, forward_message, star_message Grupos: group_info, create_group, group_update_participants, group_set_subject, group_set_description, group_invite_link, group_leave Gestión de chats: pin_chat, mute_chat, block_contact, check_number_on_whatsapp, get_profile_picture Presencia / perfil: send_presence, set_profile_status, set_profile_name Medios / inteligencia: download_media, transcribe_voice_message Análisis: whatsapp_rewind (conjunto de 6 tarjetas de historia), wrapped_card (un solo SVG compartible), whatsapp_wrapped (tarjeta de terminal), response_leaderboard (a quién respondes más rápido / a quién dejas en visto más tiempo), top_words, chat_stats (por chat, incl. tiempos de respuesta), export_chat (transcripción en markdown/texto) Control: get_status, get_me, set_mode, confirm_action, allowlist_add/remove/list

Transcripción de voz

transcribe_voice_message descarga una nota de voz y, si configuras WAMCP_TRANSCRIPTION_CMD (un comando que contenga {input} e imprima una transcripción), la procesa con tu STT preferido (p. ej. whisper). Sin él, el audio se descarga igualmente y se devuelve su ruta.

Referencia de configuración

Variable de entorno

Valor por defecto

Significado

WAMCP_MODE

read-only

read-only | assisted | unrestricted

WAMCP_DATA_DIR

./data

Base de datos SQLite + registros + medios descargados

WAMCP_AUTH_DIR

./auth_info

Credenciales de vinculación de WhatsApp

WAMCP_ALLOWLIST_ONLY

activado (modos seguros)

restringe los envíos a destinatarios conocidos

WAMCP_REQUIRE_CONFIRM

activado (modos seguros)

confirmación en dos pasos antes de enviar

WAMCP_RATE_PER_MINUTE

8

máx. envíos / minuto

WAMCP_RATE_PER_DAY

200

máx. envíos / día

WAMCP_TRANSCRIPTION_CMD

(ninguno)

plantilla de comando STT con {input}

WAMCP_SEND_FILE_ROOTS

(ninguno)

restringe desde qué directorios se pueden enviar archivos (anti-exfiltración)

Seguridad de cuenta y Términos de Servicio

Este proyecto utiliza Baileys, un cliente web de WhatsApp no oficial. Automatizar una cuenta personal de WhatsApp va contra los Términos de Servicio de WhatsApp y puede resultar en el baneo temporal o permanente de tu número. Para reducir ese riesgo:

  • Mantén el modo read-only por defecto a menos que realmente necesites enviar.

  • Nunca lo uses para contacto en frío, envíos masivos o mensajes idénticos/spam.

  • Prefiere un número establecido y bien usado en lugar de una SIM nueva; evita números VOIP.

  • Trátalo como un asistente personal, no como una herramienta de marketing.

Aceptas este riesgo al usar la herramienta. Se proporciona tal cual, para uso personal y educativo, sin garantía. No está afiliado con WhatsApp ni Meta.

Créditos

Derivado de whatsapp-mcp-ts (ISC) y whatsapp-mcp (MIT). Ver NOTICE. Licencia MIT.

Related MCP Connectors

  • Your own WhatsApp as an MCP server: read, search and send from any MCP client.

  • WhatsMCP connects Claude and other MCP-compatible AI agents directly to WhatsApp. Send and receive text, images, documents, and voice notes; manage groups (create, add/remove members, promote admins); look up contacts and profiles; follow channels; and read call and message history — all through a standard MCP interface. For voice use cases, WhatsMCP offers SIP-based calling plans (inbound-only, or full inbound/outbound) so AI voice agents can answer and place WhatsApp calls, plus low-latency WebSocket integrations with voice agent providers like ElevenLabs. Multiple WhatsApp accounts can be paired and managed per workspace, with webhook support for real-time inbound message delivery to your own infrastructure.

  • Let Claude or ChatGPT search, read and send your WhatsApp messages over MCP. OAuth sign-in.

  • Drive WhatsApp from any MCP client: pair devices, send text and media, manage contacts and groups.

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    WhatsApp MCP server that exposes messaging, groups, contacts, and profile management as tools and resources for AI agents, supporting Baileys and Meta Cloud API.
    23
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    A self-hosted WhatsApp bridge that exposes a stdio MCP server with ~20 tools for reading conversations, sending messages, managing groups, contacts, and aliases, enabling AI agents to operate WhatsApp directly.
    3
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Self-hosted WhatsApp management over Model Context Protocol, exposing a streamable HTTP MCP endpoint with 30 tools for session/QR pairing, messaging, media storage, and optional on-CPU voice note transcription via whisper.cpp.
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    OpenWA MCP server that bridges AI agents to the OpenWA WhatsApp API, exposing 40 tools for sessions, messages, contacts, groups, and webhooks so agents can read and send WhatsApp messages through a self-hosted OpenWA gateway.
    -