项目简介
GoWA WhatsApp MCP服务器是一个基于Go语言构建的WhatsApp多设备应用程序后端。它实现了Model Context Protocol (MCP),允许AI代理或大型语言模型(LLM)客户端通过标准化的JSON-RPC协议与WhatsApp互动,将WhatsApp功能封装为可调用的AI工具,从而实现消息自动化、智能回复和高级互动。
主要功能点
- MCP服务器核心支持: 依据Model Context Protocol (MCP) 标准,将WhatsApp功能封装为AI代理可调用的工具,实现消息发送、联系人共享、链接预览及位置信息传输。
- 消息发送与管理: 支持发送文本、图片、视频、文件、联系人、链接、位置和投票等多种类型消息。同时提供消息撤回、删除、编辑、标记已读和表情回应功能。
- 群组高级管理: 允许创建新群组、通过链接加入群组、退出群组、获取群组详细信息(包括群成员、邀请链接),并可管理群组成员(添加、移除、提升/降级管理员)、设置群组照片、名称、锁定状态和公告模式。
- 用户与聊天信息: 提供查询用户头像、个人状态、业务资料,以及获取您的联系人列表、聊天列表及详细聊天消息历史记录的功能。
- 连接与自动化: 支持QR码和配对码登录、会话断开重连,并提供自动回复、自动标记已读、可配置的Webhook事件通知等自动化特性。
安装步骤
- 克隆仓库: 打开终端或命令行工具,执行以下命令克隆项目仓库:
git clone https://github.com/aldinokemal/go-whatsapp-web-multidevice - 进入项目目录:
cd go-whatsapp-web-multidevice/src - 构建二进制文件 (推荐):
- Linux 或 macOS 用户: 执行 'go build -o whatsapp' 命令,这将在 'src' 目录下生成一个名为 'whatsapp' 的可执行文件。
- Windows 用户: 执行 'go build -o whatsapp.exe' 命令,这将在 'src' 目录下生成一个名为 'whatsapp.exe' 的可执行文件。 如果您不想构建,也可以直接使用 'go run . mcp' 命令运行。
- 运行MCP服务器:
- 使用构建的二进制文件运行(推荐):
- Linux/macOS: './whatsapp mcp'
- Windows: '.\whatsapp.exe mcp'
- 直接运行Go源码:
- 'go run . mcp' 服务器将默认在 'http://localhost:8080' 启动。您将看到类似以下信息的日志输出:
Starting WhatsApp MCP SSE server on localhost:8080 SSE endpoint: http://localhost:8080/sse Message endpoint: http://localhost:8080/message - 使用构建的二进制文件运行(推荐):
服务器配置 (MCP客户端需要的信息)
您的MCP客户端(例如AI代理或LLM应用)需要以下JSON格式的配置来连接到GoWA WhatsApp MCP服务器。请注意,此配置是指导MCP客户端如何启动并连接到GoWA MCP服务器,而不是GoWA MCP服务器自身的启动脚本。
{ "mcpServers": { "whatsapp": { "name": "GoWA WhatsApp MCP服务器", "description": "基于Model Context Protocol (MCP) 标准,提供WhatsApp消息、联系人、链接和位置发送等功能的AI工具接口。", "command": "./whatsapp", "args": [ "mcp", "--port", "8080", "--host", "localhost", "--debug", "false", "--os", "MyApplication" ], "url": "http://localhost:8080/sse" } } }
- 'mcpServers': 这是MCP客户端配置MCP服务器的顶级键。
- 'whatsapp': 这是您为此MCP服务器实例在客户端中定义的名称,可以根据您的偏好命名。
- 'name': MCP服务器的友好名称,用于客户端界面显示。
- 'description': MCP服务器的简要功能描述。
- 'command': 启动GoWA WhatsApp MCP服务器的可执行文件路径。例如,如果您已将其构建到当前目录,则通常是 './whatsapp'。
- 'args': 一个字符串数组,包含启动MCP服务器时需要传递的命令行参数。
- 'mcp': 告诉GoWA程序以MCP模式启动。
- '--port 8080': 指定MCP服务器监听的端口,默认是 '8080'。您可以根据需要修改。
- '--host localhost': 指定MCP服务器监听的IP地址或主机名,默认是 'localhost'。
- '--debug false': 可选参数,控制是否启用调试日志。设置为 'true' 会输出更详细的日志。
- '--os MyApplication': 可选参数,设置在WhatsApp中显示的设备名称。
- 'url': MCP服务器的SSE(Server-Sent Events)端点地址。MCP客户端通过此URL接收事件和调用工具。默认地址是 'http://localhost:8080/sse'。
基本使用方法
- 启动GoWA WhatsApp MCP服务器: 按照上述“安装步骤”中的说明,成功启动MCP服务器。
- 配置AI代理/LLM客户端: 在支持MCP协议的AI代理或LLM客户端(如Cursor)中,使用上述“服务器配置”信息进行设置,以建立与GoWA MCP服务器的连接。
- 连接WhatsApp: 通过访问GoWA MCP服务器的Web界面(默认为 'http://localhost:3000')或命令行,扫描二维码或输入配对码登录您的WhatsApp账户。
- AI代理调用工具: 一旦WhatsApp账户成功连接到GoWA MCP服务器,您的AI代理即可通过MCP协议调用服务器提供的WhatsApp工具,例如:
- 'whatsapp_send_text': 用于发送文本消息。
- 'whatsapp_send_contact': 用于发送联系人卡片。
- 'whatsapp_send_link': 用于发送带有标题的链接。
- 'whatsapp_send_location': 用于发送地理位置坐标。
信息
分类
通信与社交