使用说明
项目简介
WhatsApp Web MCP 是一个桥梁项目,它使用 Model Context Protocol (MCP) 标准协议,使得 AI 模型能够以规范化的方式与 WhatsApp Web 进行交互。该项目旨在简化 AI 模型与 WhatsApp 的集成,实现诸如信息查询、消息发送、群组管理等自动化功能。
主要功能点
- 资源 (Resources) 访问: 通过标准化的 URI 访问 WhatsApp 中的联系人、对话、群组和消息等数据。例如,可以获取联系人列表 'whatsapp://contacts' 或特定对话的消息 'whatsapp://messages/{number}'。
- 工具 (Tools) 调用: 注册了一系列实用工具,允许 AI 模型执行 WhatsApp 功能,例如:
- 'send_message': 发送消息给 WhatsApp 联系人。
- 'get_messages': 获取指定联系人的消息记录。
- 'create_group': 创建新的 WhatsApp 群组。
- 'add_participants_to_group': 向现有群组添加成员。
- 'search_contacts': 搜索联系人。
- 'search_groups': 搜索群组。
- 'get_status': 获取 WhatsApp 连接状态。
- 多种运行模式: 支持 WhatsApp API Server 模式和 MCP Server 模式,MCP Server 模式又分为 Standalone 和 API Client 两种子模式,以及 SSE 和 Command 两种传输协议,灵活适应不同的部署需求。
- REST API: 提供 WhatsApp 功能的 REST API,方便不使用 MCP 协议的应用进行集成。
安装步骤
- 克隆仓库:
git clone https://github.com/fyimail/whatsapp-mcp2.git cd whatsapp-mcp2 - 安装依赖:
npm install - 构建 (可选): 如果需要 Docker 部署,可以构建 Docker 镜像:
docker build -t whatsapp-mcp2:latest .
服务器配置 (MCP 客户端)
以下是在 MCP 客户端(例如 Claude Desktop)中配置连接 WhatsApp Web MCP 服务器的示例。你需要根据你的实际部署模式选择合适的配置。
1. 连接到以 API 客户端模式和 Command 传输模式运行的 MCP 服务器 (NPX 方式启动):
首先,你需要启动 WhatsApp API 服务器,并记录 API 密钥。
然后,在 Claude Desktop 的 MCP 服务器配置中,添加以下 JSON 配置:
{ "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 服务器日志中获得的 API 密钥 ] } } }
参数说明:
- 'server name': 'whatsapp' (用户自定义,用于在客户端标识该 MCP 服务器)
- 'command': 'npx' (运行命令,这里使用 npx 执行 'wweb-mcp')
- 'args': 启动 'wweb-mcp' 的参数列表:
- '-m', 'mcp': 运行模式为 MCP 服务器。
- '-s', 'local': 使用本地认证策略。
- '-c', 'api': MCP 连接模式为 API 客户端模式,连接到 WhatsApp API 服务器。
- '-t', 'command': MCP 传输模式为 command (Stdio)。
- '--api-base-url', 'http://localhost:3001/api': WhatsApp API 服务器的基 URL。
- '--api-key', 'YOUR_API_KEY': 连接 WhatsApp API 服务器所需的 API 密钥。
2. 连接到以 API 客户端模式和 Command 传输模式运行的 MCP 服务器 (Docker 方式启动):
与 NPX 方式类似,首先启动 WhatsApp API 服务器 (Docker 方式),并记录 API 密钥。
然后,在 Claude Desktop 的 MCP 服务器配置中,添加以下 JSON 配置:
{ "mcpServers": { "whatsapp": { "command": "docker", "args": [ "run", "-i", "--rm", "whatsapp-mcp2:latest", "-m", "mcp", "-s", "local", "-c", "api", "-t", "command", "--api-base-url", "http://host.docker.internal:3001/api", "--api-key", "YOUR_API_KEY" // 替换为你在 WhatsApp API 服务器日志中获得的 API 密钥 ] } } }
参数说明:
- 'server name': 'whatsapp' (用户自定义,用于在客户端标识该 MCP 服务器)
- 'command': 'docker' (运行命令,这里使用 docker run 执行镜像)
- 'args': Docker 运行 'whatsapp-mcp2:latest' 镜像的参数列表,参数含义与 NPX 方式相同,但命令和镜像名有所不同。
- '--api-base-url', 'http://host.docker.internal:3001/api': 在 Docker 环境中,需要使用 'host.docker.internal' 访问宿主机的 3001 端口。
注意: 以上配置中的 'YOUR_API_KEY' 需要替换为实际的 WhatsApp API 服务器生成的 API 密钥。
基本使用方法
启动 MCP 服务器后,MCP 客户端(如 Claude Desktop)即可通过配置的命令和参数连接到服务器。连接成功后,客户端可以利用服务器提供的 Resources 和 Tools 与 WhatsApp 进行交互。具体的使用方式取决于 MCP 客户端的功能和界面,通常可以在客户端中选择可用的 Tools 并传入相应的参数来执行 WhatsApp 操作。例如,在 Claude 中,你可以指示 Claude 使用 'whatsapp.send_message' 工具来发送 WhatsApp 消息。
信息
分类
通信与社交