WAHA MCP Server

WhatsApp HTTP API integration for Claude Desktop & MCP-compatible clients

README.md

WAHA MCP Server

WhatsApp HTTP API integration for Claude Desktop & MCP-compatible clients

DocumentationInstallationConfiguration🤖 Claude Code SetupTools Reference


🚀 What is WAHA MCP?

WAHA MCP Server bridges the powerful WAHA (WhatsApp HTTP API) with AI assistants like Claude Desktop, enabling seamless WhatsApp automation through the Model Context Protocol (MCP).

✨ Key Features

  • 📱 Complete WhatsApp Control - Send/receive messages, manage chats, create groups
  • 🎯 63 Tools - Comprehensive API coverage for sessions, messaging, contacts, groups, and interactive workflows
  • 🔄 Smart Media Handling - Auto-conversion for voice/video, support for URLs & local files
  • 🤖 AI-Native - Built specifically for LLM integration via MCP
  • 🔒 Secure - Environment-based API key management
  • Fast & Reliable - TypeScript-powered with robust error handling

📋 Prerequisites

Before you begin, ensure you have:


🛠️ Installation

1. Clone & Install

git clone https://github.com/dudu1111685/waha-mcp.git
cd waha-mcp
npm install
npm run build

2. Set Environment Variables

Create a .env file or export variables:

export WAHA_API_KEY="your-api-key-here"
export WAHA_URL="http://localhost:3001"  # Optional, defaults to localhost:3001

⚙️ Configuration

Claude Desktop

Add to claude_desktop_config.json:

Linux: ~/.config/claude/claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "waha": {
      "command": "node",
      "args": ["/absolute/path/to/waha-mcp/dist/index.js"],
      "env": {
        "WAHA_API_KEY": "your-api-key-here",
        "WAHA_URL": "http://localhost:3001"
      }
    }
  }
}

Cline / VS Code

Add to your Cline MCP settings (~/.vscode/mcp.json or workspace settings):

{
  "mcpServers": {
    "waha": {
      "command": "node",
      "args": ["/absolute/path/to/waha-mcp/dist/index.js"],
      "env": {
        "WAHA_API_KEY": "your-api-key-here"
      }
    }
  }
}

Claude Code (Autonomous Development)

🤖 Enable truly autonomous AI development:

Instead of Claude stopping when it needs user input, it can ask questions via WhatsApp and continue working!

🚀 Complete Setup Guide: `CLAUDE_CODE_SETUP.md`

Quick config example:

{
  "mcpServers": {
    "waha": {
      "command": "node",
      "args": ["/path/to/waha-mcp/dist/index.js"],
      "env": {
        "WAHA_API_KEY": "your-key",
        "USER_WHATSAPP_CHAT_ID": "1234567890@c.us"
      }
    }
  },
  "globalInstructions": "When you need user input during development, use ask_user_via_whatsapp tool. Never stop and wait for manual console input."
}

How it works:

  1. Claude hits a question → asks via WhatsApp
  2. You reply from your phone
  3. Claude continues working immediately
  4. Zero downtime! ⚡

📖 See also:

Other MCP Clients

Use the mcporter CLI for quick testing:

mcporter call 'waha-mcp.waha_list_sessions()'
mcporter call 'waha-mcp.waha_send_text(chatId: "1234567890@c.us", text: "Hello from MCP!")'

🧰 Tools Reference

📂 Categories

Session Management (8 tools)
Tool Description
waha_list_sessions List all sessions and their statuses
waha_get_session Get detailed info about a session
waha_create_session Create a new session
waha_start_session Start a stopped session
waha_stop_session Stop a running session
waha_restart_session Restart a session
waha_delete_session Delete a session permanently
waha_logout_session Disconnect WhatsApp account from session
Authentication (3 tools)
Tool Description
`wah

Tools 8

waha_list_sessionsList all sessions and their statuses
waha_get_sessionGet detailed info about a session
waha_create_sessionCreate a new session
waha_start_sessionStart a stopped session
waha_stop_sessionStop a running session
waha_restart_sessionRestart a session
waha_delete_sessionDelete a session permanently
waha_logout_sessionDisconnect WhatsApp account from session

Environment Variables

WAHA_API_KEYrequiredAPI key generated from your WAHA dashboard
WAHA_URLURL of your running WAHA instance
USER_WHATSAPP_CHAT_IDChat ID for autonomous AI development notifications

Try it

List all my active WhatsApp sessions and their current status.
Send a WhatsApp message to my contact with ID 1234567890@c.us saying 'Hello from Claude!'
Create a new WhatsApp session named 'WorkAccount'.
Stop the current WhatsApp session to perform maintenance.

Frequently Asked Questions

What are the key features of WAHA MCP Server?

Complete WhatsApp control including messaging, chat management, and group creation. Access to 63 specialized tools for comprehensive WhatsApp API coverage. Smart media handling with support for voice, video, URLs, and local files. AI-native design for seamless integration with LLMs via MCP. Autonomous development support for receiving AI feedback directly on WhatsApp.

What can I use WAHA MCP Server for?

Automating WhatsApp notifications for long-running AI development tasks. Managing multiple WhatsApp business sessions from a single AI interface. Integrating WhatsApp messaging into interactive AI-driven workflows. Enabling remote AI assistance by allowing Claude to message you for input.

How do I install WAHA MCP Server?

Install WAHA MCP Server by running: git clone https://github.com/dudu1111685/waha-mcp.git && cd waha-mcp && npm install && npm run build

What MCP clients work with WAHA MCP Server?

WAHA MCP Server works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep WAHA MCP Server docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Open Conare