WhatsApp消息服务器

一个基于FastMCP和Twilio API的强大、事件流驱动的WhatsApp消息服务器,支持通过编程或浏览器发送消息,适用于代理、自动化或仪表板。

  • by rajtilak-2020
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 rajtilak-2020/whatsaap-mcp-server

使用说明

📬 WhatsApp MCP:流式消息服务器

基于事件流的强大WhatsApp消息服务器 FastMCP 和 Twilio API.
使用服务器发送事件以编程方式或从浏览器发送消息——非常适合代理、自动化或仪表板。


🛠 特性

  • ✅ FastMCP 2.x 支持(流式HTTP传输)
  • ✅ 实时消息 使用Twilio WhatsApp沙盒
  • ✅ 动态电话和信息输入 (通过HTML或CLI)
  • ✅ 流媒体响应 随着 text/event-stream
  • ✅ 与AI代理协同工作、CLI或浏览器UI
  • ✅ 可选:可部署到渲染、铁路、回复

🚀 使用指南

🔧 1.设置

git clone https://github.com/your-username/whatsapp-mcp.git
cd whatsapp-mcp
python -m venv venv
venv\Scripts\activate  # or source venv/bin/activate
pip install -r requirements.txt

创建一个 .env 文件:

TWILIO_ACCOUNT_SID=ACxxxxxxxxxxxxxxxxxxxxxxxxxxxx
TWILIO_AUTH_TOKEN=your_twilio_auth_token
TWILIO_WHATSAPP_FROM=whatsapp:+14155238886

🧠 2.启动服务器

python server.py

您将看到:

🔗 Server URL: http://localhost:8000/mcp
📦 Transport: Streamable-HTTP

🌐 3.使用浏览器UI

打开 index.html 在您的浏览器中。

输入:

  • 📱 电话号码(例如。, +91xxxxxxxxxx)
  • 💬 消息

点击 发送WhatsApp消息 --并立即收到!


🧪 4.测试 curl

curl -X POST http://localhost:8000/mcp ^
  -H "Content-Type: application/json" ^
  -H "Accept: text/event-stream" ^
  -d "{\"tool\":\"send_whatsapp_message\", \"inputs\":{\"to\":\"+91xxxxxxxxxx\", \"body\":\"Hello from curl!\"}}"

✅ 替换 +91xxxxxxxxxx 使用您验证的WhatsApp号码


📊 系统流程(美人鱼图)

graph TD
  A[🧑 User] -->|Enters message & number| B[🌐 HTML UI]
  B -->|POST /mcp| C[🌀 FastMCP Server]
  C -->|calls| D[📲 Twilio API]
  D -->|sends| E[📱 WhatsApp Message]
  C -->|streams response| B

🧩 技术栈

  • 🧠 FastMCP v2.x
  • 🧪 Twilio WhatsApp API
  • ⚙️ Python 3.11+
  • 🌍 HTML+JS(获取API)
  • 🔁 服务器发送事件(SSE)

🛡️ 安全说明

  • 永不承诺 .env 秘密
  • 沙盒只能向经过验证的用户发送消息
  • 升级到Twilio Business以获得完整的发送功能

🤖 代理就绪示例(Python)

from fastmcp import Client
from server import mcp

async with Client(mcp) as client:
    await client.call_tool("send_whatsapp_message", {
        "to": "+91xxxxxxxxxx",
        "body": "Triggered from an agent 🚀"
    })

💖 作者

由以下材料制成❤️ 靠近 K Rajtilak