返回 MCP 目录
public公开dns本地运行

whatsapp-bot-mcp

NiagaBot是基于Qwen3-Omni AI的智能WhatsApp商业自动化机器人,支持多模态消息处理、群组管理、批量广播和数据分析等功能

article

README

🚀 NiagaBot - 智能WhatsApp商业自动化工具

NiagaBot 是一款智能的WhatsApp商业自动化机器人,它借助了AI Qwen3-Omni的强大能力。该机器人能够帮助您实现商业通信自动化、消息广播、消息定时发送、自动回复等诸多功能!

由先进AI驱动的智能商业自动化伙伴

✨ 主要特性

🤖 智能AI自动化

  • 多模态AI:利用Qwen3-Omni处理文本、图像、音频和视频。
  • 智能自动回复:自动回复客户消息。
  • 聊天流程构建器:为客户服务构建对话流程。

📣 广播与营销

  • 批量广播:同时向众多客户发送消息。
  • 定时消息:安排消息在后续时间发送。
  • 进度跟踪:实时监控发送状态。

👥 群组管理

  • 欢迎/告别消息:自动欢迎新成员。
  • 反垃圾邮件保护:保持群组清洁安全。
  • 群组同步:轻松管理多个群组。

📊 分析与报告

  • 全面仪表盘:监控机器人的所有活动。
  • 统计与指标:分析消息和广播的性能。
  • 数据导出:将分析数据导出为CSV/JSON格式。

🔐 企业级特性

  • 多用户支持:基于角色访问的团队协作。
  • REST API:与其他系统集成。
  • Web仪表盘:美观易用的控制面板。
  • 安全认证:基于JWT的安全机制。

🔧 技术细节

WhatsApp Web (浏览器自动化)
          ↓
   WhatsApp机器人核心
          ↓
  Qwen3-Omni集成
    ↙              ↘
本地模型    DashScope API

📦 安装指南

前置条件

  • Node.js(v16或更高版本)
  • npm或yarn
  • 用于测试的WhatsApp账户
  • (可选)用于访问基于云的Qwen3-Omni的DashScope API密钥

安装步骤

  1. 克隆仓库:
git clone <repository-url>
cd whatsapp-bot-mcp
  1. 安装依赖:
npm install

🛠️ 配置说明

该机器人可以通过两种方式进行配置:

选项1:本地模型(资源密集型)

要在本地运行Qwen3-Omni,您需要:

  • 高端GPU(建议32GB以上显存)
  • 大量内存(建议64GB以上)
  • 具备所需依赖的Python环境

由于其大小和复杂性,此选项需要安装未包含在本软件包中的额外依赖项。

选项2:阿里云/DashScope API(大多数用户推荐)

这是在无需高端硬件的情况下使用Qwen3-Omni的最简单方法:

选项A:通过DashScope(简易版本)

  1. DashScope 注册账户。
  2. 从仪表盘获取您的API密钥:
    • 访问 DashScope控制台
    • 导航到“API密钥”部分。
    • 创建新的API密钥或使用现有密钥。
  3. 更新 config.json
{
  "dashscope": {
    "enabled": true,
    "apiKey": "您的API密钥",
    "model": "qwen3-omni"
  }
}

选项B:通过阿里云(企业用户适用)

  1. 阿里云 注册账户。
  2. 启用DashScope或ModelStudio服务。
  3. 通过阿里云控制台获取访问密钥。
  4. 使用合适的API端点:
{
  "dashscope": {
    "enabled": true,
    "apiKey": "您的访问密钥",
    "model": "qwen3-omni",
    "apiEndpoint": "https://dashscope.aliyuncs.com/api/v1"
  }
}

如何获取API密钥:

  1. 注册账户

  2. 获取API密钥

    • 访问 DashScope控制台
    • 导航到“API密钥”部分
    • 创建新的API密钥或使用现有密钥
    • 复制API密钥以用于配置
  3. 安全存储API密钥(推荐): 不要将API密钥硬编码在配置文件中,而是使用环境变量:

    # 设置环境变量(Linux/Mac)
    export DASHSCOPE_API_KEY="您的API密钥"
    
    # 设置环境变量(Windows)
    set DASHSCOPE_API_KEY="您的API密钥"
    
    # 或者在项目目录中创建.env文件
    echo "DASHSCOPE_API_KEY=您的API密钥" > .env
    

    然后在 config.json 中引用它:

    {
      "dashscope": {
        "enabled": true,
        "apiKey": null,
        "model": "qwen3-omni"
      }
    }
    

另外,您可以复制示例配置文件并进行编辑:

cp config.example.json config.json
# 然后使用您的API密钥编辑config.json

免费套餐与定价

  • DashScope提供免费额度供您起步使用。
  • 对于更高的使用需求,采用按需付费的计费方式。
  • 查看 DashScope定价页面 获取当前费率。

🔒 安全最佳实践

使用DashScope API时,请遵循以下安全最佳实践:

  1. 切勿将API密钥提交到版本控制系统

    • .envconfig.json 添加到 .gitignore 文件中。
    • 使用环境变量代替硬编码的密钥。
  2. 使用环境变量存储API密钥

    # 创建.env文件
    echo "DASHSCOPE_API_KEY=您的API密钥" > .env
    
    # 添加到.gitignore
    echo ".env" >> .gitignore
    
  3. 限制API密钥权限

    • 创建具有最小所需权限的密钥。
    • 为不同环境(开发、测试、生产)使用不同的密钥。
  4. 监控API使用情况

    • 定期在DashScope控制台检查您的使用情况。
    • 为异常活动或使用高峰设置警报。
  5. 定期轮换密钥

    • 定期更改您的API密钥。
    • 立即轮换任何已泄露的密钥。

💻 使用示例

基础用法

  1. 启动机器人:
npm start
  1. 使用您的WhatsApp移动应用扫描二维码登录。

  2. 机器人将开始监控消息并使用Qwen3-Omni进行回复。

📚 详细文档

工作原理

  1. 消息监控:机器人持续检查WhatsApp Web中的新消息。
  2. 消息处理:传入的消息(文本或媒体)由Qwen3-Omni进行处理。
  3. 回复生成:Qwen3-Omni根据输入生成适当的回复。
  4. 回复发送:回复通过WhatsApp Web发送回去。

Qwen3-Omni能力

Qwen3-Omni提供高级多模态处理功能,包括:

  • 文本理解:处理并回复多种语言的文本消息。
  • 图像分析:分析图像并回复视觉内容。
  • 音频处理:转录并理解音频消息。
  • 视频理解:通过视觉和音频分析处理视频内容。
  • 多模态推理:结合多种模态的信息进行全面理解。
  • 实时交互:以文本和自然语音流式传输回复。
  • 多语言支持:支持119种文本语言、19种语音输入语言和10种语音输出语言。

支持的模态

  1. 文本:处理自然语言查询、对话和文档分析。
  2. 图像:识别对象、场景、文本(OCR)和视觉元素。
  3. 音频:语音识别、音乐分析、声音分类和音频字幕。
  4. 视频:视频描述、场景分析和视听理解。

语音选项

使用音频生成功能时,Qwen3-Omni支持多种语音选项:

  • Ethan:一个充满活力、乐观的男性声音。
  • Chelsie:一个温柔、柔和的女性声音。
  • Aiden:一个温暖、随和且带有男孩魅力的男性声音。

🤝 贡献说明

欢迎贡献代码!请随时提交拉取请求。

📄 许可证

本项目采用MIT许可证 - 详情请参阅LICENSE文件。

🙏 致谢

  • 通义实验室的Qwen3-Omni
  • 用于基于云的AI访问的DashScope API
  • 用于浏览器自动化的Playwright/Puppeteer
  • 用于工具集成的模型上下文协议

使用阿里云/DashScope的优势

查看 详细优势 了解使用阿里云或DashScope访问Qwen3-Omni的好处。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端