使用说明

项目简介

WhatsApp Web MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器实现,旨在为 AI 模型(如 Claude)提供访问 WhatsApp Web 功能的标准化接口。通过此服务器,AI 模型可以获取 WhatsApp 的联系人、聊天记录等上下文信息,并调用发送消息、创建群组等工具,从而实现与 WhatsApp 的智能交互和自动化。

主要功能点

  • 资源 (Resources)
    • 'whatsapp://contacts': 获取 WhatsApp 联系人列表
    • 'whatsapp://messages/{number}': 获取指定联系人的聊天消息
    • 'whatsapp://chats': 获取 WhatsApp 聊天列表
    • 'whatsapp://groups': 获取 WhatsApp 群组列表
    • 'whatsapp://groups/search?query={query}': 搜索 WhatsApp 群组
    • 'whatsapp://groups/{groupId}/messages': 获取指定群组的消息
  • 工具 (Tools)
    • 'get_status': 检查 WhatsApp 客户端连接状态
    • 'send_message': 向 WhatsApp 联系人发送消息
    • 'search_contacts': 搜索 WhatsApp 联系人
    • 'get_messages': 获取指定联系人的聊天消息
    • 'get_chats': 获取 WhatsApp 聊天列表
    • 'create_group': 创建 WhatsApp 群组
    • 'add_participants_to_group': 向 WhatsApp 群组添加成员
    • 'get_group_messages': 获取指定群组的消息
    • 'send_group_message': 向 WhatsApp 群组发送消息
    • 'search_groups': 搜索 WhatsApp 群组
    • 'get_group_by_id': 获取指定群组的详细信息
  • MCP 传输模式:支持 SSE (Server-Sent Events) 和 Command 两种传输协议。
  • 部署模式
    • Standalone 模式:MCP 服务器直接连接 WhatsApp Web 客户端。
    • API 客户端模式:MCP 服务器通过 WhatsApp API Server 间接连接 WhatsApp Web。

安装步骤

  1. 克隆仓库

    git clone https://github.com/pnizer/wweb-mcp.git
    cd wweb-mcp
  2. 安装依赖

    npm install -g .  # 全局安装
    # 或
    npx .           # 使用 npx 直接运行
  3. Docker 构建 (可选)

    docker build . -t wweb-mcp:latest

服务器配置

以下是 Claude Desktop MCP Server 配置示例,用于连接 WhatsApp Web MCP Server (API 客户端模式):

{
    "mcpServers": {
        "whatsapp": {
            "command": "npx",
            "args": [
                "wweb-mcp",
                "-m", "mcp",
                "-s", "local",
                "-c", "api",
                "-t", "command",
                "--api-base-url", "http://localhost:3001/api",
                "--api-key", "YOUR_API_KEY"  // 替换为实际的 WhatsApp API Key
            ]
        }
    }
}

参数说明:

  • 'server name': 服务器名称,例如 "whatsapp"。
  • 'command': 启动 MCP 服务器的命令,例如 "npx"。
  • 'args': 传递给启动命令的参数列表:
    • '"wweb-mcp"': 执行 wweb-mcp 程序。
    • '"-m", "mcp"': 运行模式设置为 MCP 服务器。
    • '"-s", "local"': 使用本地认证策略 (推荐)。
    • '"-c", "api"': MCP 连接模式设置为 API 客户端模式。
    • '"-t", "command"': MCP 传输模式设置为 Command 模式 (Stdio)。
    • '"--api-base-url", "http://localhost:3001/api"': WhatsApp API Server 的基础 URL。
    • '"--api-key", "YOUR_API_KEY"': 连接 WhatsApp API Server 所需的 API Key,需要在启动 WhatsApp API Server 后获取并替换 'YOUR_API_KEY'。

注意:

  • 请根据实际部署情况修改 'command' 和 'args' 中的路径和参数。
  • 如果使用 Docker 部署,'command' 应为 "docker run",'args' 需相应调整。
  • 'api-key' 需要在首次运行 WhatsApp API Server 后从日志中获取。

基本使用方法

  1. 启动 WhatsApp API Server (如果使用 API 客户端模式)

    npx wweb-mcp --mode whatsapp-api --api-port 3001 --auth-strategy local

    首次启动需要扫描二维码进行 WhatsApp Web 认证。API Key 会在日志中显示。

  2. 启动 MCP Server (Standalone 模式或 API 客户端模式)

    • Standalone 模式
      npx wweb-mcp --mode mcp --mcp-mode standalone --transport sse --sse-port 3002 --auth-strategy local
    • API 客户端模式 (需要提供 API Key)
      npx wweb-mcp --mode mcp --mcp-mode api --api-base-url http://localhost:3001/api --api-key YOUR_API_KEY --transport sse --sse-port 3002 --auth-strategy local
  3. 在 MCP 客户端 (如 Claude Desktop) 中配置 MCP Server 连接信息 根据上述“服务器配置”示例进行配置,确保 'command' 和 'args' 参数正确。

  4. 使用 AI 模型调用 MCP Server 提供的工具和资源 配置完成后,AI 模型即可通过 MCP 协议与 WhatsApp Web MCP Server 通信,利用其提供的工具和资源进行 WhatsApp 功能的调用和数据访问。

信息

分类

通信与社交