WhatsApp REST API with support for UI, Webhooks, and MCP
GitHub RepoImpressions6.7k

WhatsApp REST API with support for UI, Webhooks, and MCP

@the_ospsPost Author

Project Description

View on GitHub

Build a WhatsApp REST API with UI, Webhooks, and MCP Support

Ever wanted to integrate WhatsApp messaging into your application without dealing with the official, often restrictive, Business API? Maybe you need to automate messages, sync notifications, or build a custom dashboard for customer support. The official routes can be complex, but there's a clever open-source project that gives you direct control.

This project, go-whatsapp-web-multidevice, creates a bridge between your code and WhatsApp Web. It wraps the multi-device capability into a clean REST API, complete with a built-in UI, webhooks for real-time events, and even MCP (Message Content Platform) support. It's essentially a self-hosted WhatsApp gateway.

What It Does

In short, this tool runs a local server that acts as a client for WhatsApp Web. Once you authenticate by scanning a QR code, the server exposes a set of RESTful endpoints. You can use these endpoints to send messages, manage chats, and receive incoming messages via configurable webhooks. The built-in web UI lets you interact with your WhatsApp account directly from your browser, while the API handles the programmatic heavy lifting.

Why It's Cool

The real power here lies in its flexibility and feature set. Instead of just a basic sender, you get a suite of tools that cover most integration needs.

  • REST API: The core feature. Send messages, media, and manage contacts with simple HTTP requests, making it accessible from any programming language.
  • Built-in UI: You're not working blind. The project includes a clean interface to view your chats and send messages manually, which is great for testing and light use.
  • Webhook Support: This is a game-changer for automation. Instead of constantly polling the API, you can set up a webhook URL to receive instant notifications for incoming messages and other events.
  • MCP Integration: The inclusion of Message Content Platform support opens up advanced possibilities for message parsing, filtering, and routing, which is fantastic for building sophisticated chat bots or moderation tools.

How to Try It

Getting started is straightforward. You'll need Go installed on your machine.

  1. Clone the repository and navigate into the directory:
    git clone https://github.com/aldinokemal/go-whatsapp-web-multidevice
    cd go-whatsapp-web-multidevice
    
  2. Install the dependencies and run the server:
    go mod tidy
    go run main.go
    
  3. Open your browser to http://localhost:9000. You'll see a QR code.
  4. Scan the QR code with your WhatsApp mobile app (Linked Devices > Link a Device).
  5. That's it. You're now connected. You can start using the web UI at http://localhost:9000 or hit the REST API endpoints directly (check the project's README for the full list).

Final Thoughts

This project is a solid tool for developers who need a programmable interface to WhatsApp for prototyping, personal projects, or internal tools. It elegantly sidesteps the need for official approval and provides all the essential building blocks in one place. Just remember, as it interacts with WhatsApp Web, you should be mindful of rate limits and use it responsibly to avoid any issues with your account. If you've been looking for a way to hook your apps into WhatsApp, this is a fantastic place to start.


Found this project interesting? Follow us at @githubprojects for more cool developer tools and repos.

Back to Projects
Project ID: 1990433664698564705Last updated: November 17, 2025 at 02:55 PM