WaliChat WhatsApp API
About
Automate WhatsApp by sending messages, summarizing conversations, and managing chats using natural language with AI assistants.
Details
- Author
- walichat
- Categories
- Communication, Other, Productivity
Jump to
Setup
Install WaliChat WhatsApp API in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/walichat/mcp-walichat
Follow the installation instructions in the repository README, then restart your MCP client.
πSupercharge your WhatsApp automation driven by AI!Send messages, summarize conversations, and manage chats using natural language from your favorite AI assistant like ChatGPT, Claude, or custom AI agents.
β¨Easily integrateWaliChat WhatsApp APIwith anyMCP-poweredAI client including ChatGPT, VS Code Copilot, Claude Desktop, Cursor, Windsurf andmany more!
π¬Transform how you communicate- automate responses, analyze chat patterns, and manage customer conversations at scale, manage WhatsApp chats and groups, everything through simple conversational text or voice commands with your AI assistant.
β οΈNote: You only need to use this package if your MCP client does notsupport HTTP streaming(previously known as SSE connection). To use a remote HTTP connectionread these instructions.
- π± Basic Messaging & Communication
- π Conversation Analysis & Insights
- π₯ Group & Team Management
- β° Message Scheduling & Automation
- π Contact & Device Management
- π Analytics & Reporting
- π Status & Monitoring
- π Bulk Operations & Campaigns
- π― Smart Business Automation
- π Account & File Management
- Supported Clients
- Claude Desktop Configuration
- VS Code Copilot Configuration
- Benefits of HTTP Streaming
- Getting Your API Key
- π± Core Messaging & Communication
- π¬ Chat & Conversation Management
- π₯ Group & Team Management
- πΊ Channel & Broadcasting
- π Campaign & Bulk Operations
- π± Device & Account Management
- π€ Contact & Label Management
- π File & Media Management
- π§ System & Utilities
- π Analytics & Insights
- Custom Headers
- Usage as a tool in OpenAI
- Flags
- Claude Desktop
- VS Code Extension / Copilot
- Cursor
- Windsurf
- Cline
- Continue.dev
- Zed Editor
- Jan AI
- Open WebUI
- Sourcegraph Cody
- OpenAI Responses API
- Clear your~/.mcp-authdirectory
- Check your Node version
- Restart Claude
- VPN Certs
- Check the logs
- Debug Logs
- Authentication Errors
- "Client" mode
Check out the API documentation and examples here
Product update: π Automate anything on WhatsApp with our new No-Code solutionWaliChat Flowsβ‘β¨
Chat with your WhatsApp conversations from any AI clients or agentic tool integration.
Here are various prompts you can use with any AI assistant to interact with WhatsApp through the WaliChat MCP connector:
- "Send a WhatsApp message to +1234567890 saying 'Hello! How are you today?'"
- "Send a message to the contact named 'John Smith' with the text 'Meeting confirmed for 3 PM'"
- "Send an urgent message to +44123456789: 'Please call me back ASAP'"
- "Send a WhatsApp message with an image from [URL] to [phone-number]"
- "Reply to message [message-id] in chat [chat-id] with 'Thanks for your feedback!'"
- "Summarize my last 10 WhatsApp messages with +1555123456"
- "Analyze the conversation tone in my chat with the Marketing Team group"
- "Show me the key topics discussed in my conversation with Sarah over the past week"
- "Count how many messages I've received today from all contacts"
- "Search for messages containing 'invoice' in chat [chat-id]"
- "Generate chat activity report grouped by day for this month"
- "Create a WhatsApp group called 'Team Updates' with participants +1234567890, +0987654321"
- "How many participants are in the 'Project Team Alpha' WhatsApp group?"
- "List all members of my 'Family Chat' group"
- "Add +1234567890 to WhatsApp group [group-id]"
- "Make +1234567890 an admin in group [group-id]"
- "Get the invite link for group [group-id]"
- "Schedule a message to +1234567890 saying 'Happy Birthday!' to be sent tomorrow at 9 AM"
- "Set up a reminder message for the team group about the meeting next Friday at 2 PM"
- "Set up auto-replies for messages received outside business hours (9 AM - 5 PM)"
- "Create a workflow: when someone messages 'INFO', automatically send our company brochure"
- "Check if the phone number +1555987654 is a valid WhatsApp number"
- "What WhatsApp numbers do I have connected to WaliChat?"
- "Show me the status of all my WhatsApp devices"
- "Get the profile information for contact +1234567890"
- "Show me all my recent contacts from the past month"
- "Generate a report of my most frequent WhatsApp contacts this month"
- "Show me my busiest WhatsApp conversation days this week"
- "Which agent responds fastest to customer inquiries?"
- "Show me chat volume trends over the last 30 days"
- "Count unread messages across all my chats"
- "Find customers who haven't interacted in the last 60 days"
- "Check the delivery status of my last message to +1234567890"
- "Show me all failed message deliveries from today"
- "Monitor if my contact +1555123456 has read my recent messages"
- "Post 'Working on exciting new features!' as my WhatsApp status"
- "Send the same announcement to all members of my 'Team Updates' group individually"
- "Broadcast a holiday greeting to my top 10 most contacted numbers"
- "Create a campaign called 'Welcome Series' to send 'Welcome to our service!' to multiple contacts"
- "Start campaign [campaign-id] and check its delivery status"
- "Create a label called 'VIP Customer' with red color and apply it to important chats"
- "Assign chat [chat-id] to agent [agent-id]"
- "Show me all chats with the 'support' label"
- "Analyze sentiment in customer support conversations and flag negative ones"
- "Generate a CSV report of all chats with their last activity"
- "Find all unread messages in my WhatsApp chats"
- "Show me my current WaliChat account usage and limits"
- "Upload an image from [image-url] to use in WhatsApp messages"
- "List all uploaded files tagged as 'marketing'"
- "Export all contacts from device [device-id] to JSON"
These prompts cover real-world scenarios for businesses using WhatsApp for customer service, marketing, team collaboration, and automation through the WaliChat platform.
If your MCP client supportsHTTP streaming(previously known as Server-Sent Events or SSE transport), you can connect directly to the WaliChat MCP server without installing this package. This is the preferred method as it's faster and requires no local setup.
Most modern MCP clients support HTTP streaming, including:
- Claude Desktop(latest versions)
- VS Code Copilotwith MCP extension
- Cursor(v0.48.0+)
- Windsurf
- OpenAI Responses API
- ChatGPT(Pro users have access, soon more users)
Add this to yourclaude_desktop_config.json:
{ "mcpServers": { "walichat": { "type": "http", "url": "https://api.wali.chat/mcp?key=YOUR_WALICHAT_API_KEY" } } }
{ "mcpServers": { "walichat": { "type": "http", "url": "https://api.wali.chat/mcp?key=${WALICHAT_API_KEY}", "env": { "WALICHAT_API_KEY": "your-api-key-here" } } } }
{ "mcp.servers": { "walichat": { "url": "https://api.wali.chat/mcp?key=YOUR_WALICHAT_API_KEY", "transport": "http-streaming" } } }
- β
No local installationrequired
- β
Faster connectiontimes
- β
Automatic updates- always uses the latest server version
- β
Better reliability- no Node.js dependency issues
- β
Simpler configuration- just a URL
- Sign up atWaliChat.com
- Go to yourAPI settings
- Copy your API key
- ReplaceYOUR_WALICHAT_API_KEYin the configuration above
The WaliChat MCP server provides comprehensive WhatsApp automation tools organized into functional categories. All tools use action-based parameters for LLM-friendly interactions:
- manage_whatsapp_messages- Universal message sending with 11 action types: text, media, location, contact, poll, event, scheduled, live, expiring, agent, and template messaging
- manage_whatsapp_message_interactions- Message interactions: reply, forward, reaction, and poll voting
- get_whatsapp_chat_messages- Comprehensive message retrieval: recent, search, date range, by sender, by type, by ID, advanced search, thread context, and media filtering
- analyze_whatsapp_chat_messages- Message analytics: statistics, delivery status tracking, and data export in multiple formats
- get_whatsapp_chats- Universal chat retrieval with 9 actions: recent, unread, by status, assigned, by contact type, by ID, search, archived, and date range filtering
- analyze_whatsapp_chats- Chat analytics and export with comprehensive statistics and data export capabilities
- search_whatsapp_chats_by_name- Quick chat search by contact name, group name, or channel name
- manage_whatsapp_groups- Complete group operations: search, create, update, join, leave, invite management with 8 action types
- manage_whatsapp_group_participants- Participant management: add, remove, promote, demote, approval workflow with 7 action types
- manage_whatsapp_team- Team member management: search, create, update, delete, device access control with 7 action types
- manage_whatsapp_departments- Department organization: list, create, update, delete with agent assignments and visual customization
- manage_whatsapp_channels- Channel lifecycle management: list, create, update, search, join, leave, image updates with 9 action types
- manage_whatsapp_channel_messages- Channel message retrieval with filtering and pagination
- manage_whatsapp_status- WhatsApp Status (Stories) management: get, publish, schedule with media support and advanced timing
- manage_whatsapp_campaigns- Bulk messaging campaigns: search, create, update, start, stop, delete with 7 action types
- manage_whatsapp_campaign_contacts- Campaign recipient management: search, add, remove contacts with filtering options
- manage_whatsapp_queue- Message queue control: status monitoring, queue management, bulk deletion with 3 action types
- get_whatsapp_devices- Device listing with advanced filtering: status, session, search, active/online filtering
- get_whatsapp_device_details- Detailed device information: configuration, session status, metrics, and insights
- health_check- Comprehensive system health check for MCP server and connected WhatsApp devices
- manage_whatsapp_contacts- Contact CRUD operations: list, get, create, update, delete, bulk operations, metadata management with 8 action types
- manage_whatsapp_contact_actions- Contact blocking: block and unblock operations
- manage_whatsapp_labels- Label management: list, create, update, delete with color-coded organization
- search_whatsapp_outbound_files- Uploaded file search with advanced filtering by type, size, date, tags, and metadata
- search_whatsapp_chat_files- Received file search from WhatsApp chats with comprehensive filtering options
- ping- Basic connectivity test with server status and response time measurement
All tools include comprehensive analytics capabilities:
- Message delivery tracking and statistics
- Chat activity analysis and reporting
- Device performance metrics and monitoring
- Campaign analytics and success tracking
- Team productivity insights and reporting
Each tool supports extensive filtering, pagination, sorting, and export capabilities, making them perfect for both manual operations and automated workflows through AI assistants.
All the most popular MCP clients (Claude Desktop, VS Code Copilot, Cursor, Windsurf...) use the following config format:
{ "mcpServers": { "remote-example": { "command": "npx", "args": [ "mcp-walichat", "api-key-goes-here" ] } } }
To bypass authentication, or to emit custom headers on all requests to your remote server, pass--headerCLI arguments:
{ "mcpServers": { "remote-example": { "command": "npx", "args": [ "mcp-walichat", "${WALICHAT_API}" ], "env": { "WALICHAT_API": "..." } }, } }
Note:Cursor and Claude Desktop (Windows) have a bug where spaces insideargsaren't escaped when it invokesnpx, which ends up mangling these values. You can work around it using:
{ // rest of config... "args": [ "mcp-walichat", "${WALICHAT_API}" ], "env": { "WALICHAT_API": "<walichat-api-get-here>" } },
Here's how you can use the WaliChat MCP server as a tool with the OpenAI JavaScript client:
import OpenAI from 'openai'; const walichatKey = process.env.WALICHAT_API_KEY || 'walichat-api-key-here' const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY, }); // Example: Send a WhatsApp message using OpenAI's new Responses API with MCP const response = await openai.responses.create({ model: 'o4-mini', tools: [ { type: 'mcp', server_label: 'walichat', server_url: https://api.wali.chat/mcp?key=${walichatKey}, require_approval: 'never' } ], input: 'Send a WhatsApp message to +1234567890 saying "Hello from AI!"' }); console.log('Response:', response);
Make sure to install the required dependencies:
export OPENAI_API_KEY="your-openai-api-key" export WALICHAT_API_KEY="your-walichat-api-key"
This approach uses OpenAI's new Responses API with MCP integration, which automatically handles tool discovery, execution, and communication with the WaliChat MCP server without requiring manual MCP client setup.
- Ifnpxis producing errors, consider adding-yas the first argument to auto-accept the installation of themcp-walichatpackage.
"command": "npx", "args": [ "-y" "mcp-walichat", "API_KEY_GOES_HERE" ]
- To forcenpxto always check for an updated version ofmcp-walichat, add the@latestflag:
"args": [ "mcp-walichat@latest" ]
- To change which portmcp-walichatlistens for an OAuth redirect (by default3334), add an additional argument after the server URL. Note that whatever port you specify, if it is unavailable an open port will be chosen at random.
"args": [ "mcp-walichat", "API_KEY_GOES_HERE" ]
- To enable detailed debugging logs, add the--debugflag. This will write verbose logs to~/.mcp-auth/{server_hash}_debug.logwith timestamps and detailed information about the auth process, connections, and token refreshing.
"args": [ "mcp-walichat", "API_KEY_GOES_HERE", "--debug" ]
In order to add an MCP server to Claude Desktop you need to edit the configuration file located at:
- macOS:~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:%APPDATA%\Claude\claude_desktop_config.json
If it does not exist yet,you may need to enable it under Settings > Developer.
Restart Claude Desktop to pick up the changes in the configuration file. Upon restarting, you should see a hammer icon in the bottom right corner of the input box.
Official Docs. The configuration file is located at~/.cursor/mcp.json.
As of version0.48.0, Cursor supports unauthed SSE servers directly. If your MCP server is using the official MCP OAuth authorization protocol, you still need to add a"command"server and callmcp-walichat.
Official Docs. The configuration file is located at~/.codeium/windsurf/mcp_config.json.
Official Docs. The configuration file is located at~/.cline/mcp_servers.json.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





