WhatsApp消息发送服务

一个基于Twilio API的FastMCP服务器,用于发送WhatsApp消息,支持通过FastMCP客户端进行远程调用。

  • by rgolabs
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 wubbyweb/mcp-generated

使用说明

Twilio WhatsApp FastMCP服务器💬

该项目提供了一个简单的FastMCP服务器,允许使用Twilio API发送WhatsApp消息。

特性

  • 📲 通过Twilio发送WhatsApp消息。
  • 🤖 暴露a send_whatsapp 用于FastMCP客户端(如AI模型)的工具。
  • 🔒 从安全位置加载配置 .env 文件。
  • 🧪 包括一个基本的测试脚本(/home/rj/Code/mcp-generated/twilio_test.py)用于直接Twilio API交互。

设置

  1. 获取代码: 克隆此存储库或将源文件下载到 /home/rj/Code/mcp-generated/.

  2. **创建虚拟环境(推荐){ @@ -77,11 +77,11 @@

2.运行测试脚本

-The /home/rj/Code/mcp-generated/twilio_test.py 该脚本提供了一种直接测试使用Twilio凭据发送消息的方法 没有 FastMCP服务器。 +The /home/rj/Code/mcp-generated/twilio_test.py 该脚本提供了一种直接测试使用Twilio凭据发送消息的方法 没有 FastMCP服务器。 🛠️

  • 修改脚本: 确保 to= 数字在 /home/rj/Code/mcp-generated/twilio_test.py 是链接到您的Twilio Sandbox(如果使用Sandbox)的WhatsApp号码,或任何有效的WhatsApp号码(如果使用购买的Twilios号码)。这 from_ 数字通常应该是您的Twilio Sandbox号码(whatsapp:+14155238886)或您购买的Twilio WhatsApp号码。
  • 运行脚本:
python /home/rj/Code/mcp-generated/twilio_test.py
```
This will attempt to send a hardcoded message ("Is this working?") from the specified Twilio number to the specified recipient.

:** bash 🌱 cd /home/rj/Code/mcp-generated/ python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`

  1. 安装依赖关系: 必要的依赖关系列在 /home/rj/Code/mcp-generated/whatsapp_server.py。您可以使用pip安装它们:

    pip install twilio python-dotenv pydantic-settings fastmcp
    

    或者,如果使用FastMCP框架功能:

    fastmcp install /home/rj/Code/mcp-generated/whatsapp_server.py
    
  2. 配置环境变量:

    • 如果你没有Twilio帐户,请注册一个。
    • 从Twilio控制台获取您的帐户SID和身份验证令牌。
    • 为WhatsApp设置Twilio沙盒或配置专用的Twilio WhatsApp号码。
    • 创建一个名为的文件 .env 在项目根目录中(/home/rj/Code/mcp-generated/).
    • 将您的Twilio凭据和WhatsApp号码添加到 .env 文件: 🔑
      # /home/rj/Code/mcp-generated/.env
      TWILIO_ACCOUNT_SID=ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
      TWILIO_AUTH_TOKEN=your_auth_token_here
      TWILIO_WHATSAPP_NUMBER=+14155238886 # Use your Twilio WhatsApp number (Sandbox or purchased)
      
    • 重要提示: 将占位符值替换为您的实际凭据和编号。确保 TWILIO_WHATSAPP_NUMBER 以a开头 + 并且包括国家代码(E.164格式)。这 whatsapp_server.py 脚本将自动添加 + 如果它不见了 .env 文件。 ❗
    • 试用账户备注: 如果您使用的是Twilio试用帐户 TWILIO_WHATSAPP_NUMBER 很可能是Twilio Sandbox的号码(+14155238886).你 必须 注册任何收件人(to_number)通过Twilio控制台在Twilio Sandbox中输入电话号码,以便成功传递消息。发送到未注册的号码需要升级您的Twilio帐户。

用法

1.运行FastMCP服务器

为了使 send_whatsapp 可用于远程调用的工具(例如,来自与FastMCP集成的AI模型):

python /home/rj/Code/mcp-generated/whatsapp_server.py

服务器将启动并打印其配置使用的Twilio号码。它将监听传入请求(默认情况下通过stdio,但FastMCP支持其他传输)。然后,FastMCP客户端可以调用 send_whatsapp 工具与 to_number (包括 whatsapp: 前缀。, whatsapp:+15551234567)以及 message 论据。

交互示例(概念性):

客户端(如AI)🤖) 可能会发送这样的请求(格式取决于传输):

{
  "tool_name": "send_whatsapp",
  "arguments": {
    "to_number": "whatsapp:+15551234567",
    "message": "Hello from the FastMCP server!"
  }
}

服务器将对此进行处理,调用Twilio API,并返回确认或错误消息。

2.运行测试脚本

这 /home/rj/Code/mcp-generated/twilio_test.py 该脚本提供了一种直接测试使用Twilio凭据发送消息的方法 没有 FastMCP服务器。 🛠️

  • 修改脚本: 确保 to= 数字在 /home/rj/Code/mcp-generated/twilio_test.py 是链接到您的Twilio Sandbox(如果使用Sandbox)的WhatsApp号码,或任何有效的WhatsApp号码(如果使用购买的Twilios号码)。这 from_ 数字通常应该是您的Twilio Sandbox号码(whatsapp:+14155238886)或您购买的Twilio WhatsApp号码。
  • 运行脚本:
    python /home/rj/Code/mcp-generated/twilio_test.py
    
    这将尝试从指定的Twilio号码向指定的收件人发送硬编码消息(“这有效吗?”)。