WhatsApp服务器实现

一个使用模型上下文协议(MCP)SDK实现的WhatsApp服务器,通过GreenAPI服务提供标准化的WhatsApp交互接口。

  • by piyushgupta53
  • TypeScript
  • 本地部署
  • 7 星标
  • 更新于
在 GitHub 查看 piyushgupta53/whatsapp-mcp-server

使用说明

WhatsApp MCP服务器

使用模型上下文协议(MCP)SDK的WhatsApp服务器实现。该服务器提供了一个标准化的接口,用于通过GreenAPI服务与WhatsApp进行交互。

特性

  • WhatsApp会话管理
  • 与GreenAPI服务集成
  • 标准化MCP协议实施
  • TypeScript支持

先决条件

  • Node.js(v14或更高版本)
  • npm或纱线
  • GreenAPI帐户和凭据

安装

  1. 克隆存储库:
git clone <repository-url>
cd whatsapp-mcp-server
  1. 安装依赖项:
npm install

配置

服务器需要以下环境变量:

  • GREENAPI_API_URL:GreenAPI服务的基本URL
  • GREENAPI_API_TOKEN:您的GreenAPI API代币

用法

  1. 启动服务器:
npm start
  1. 服务器将开始通过标准输入/输出监听MCP协议消息。

可用工具

打开会话

使用GreenAPI凭据打开新的WhatsApp会话。

参数:

  • sessionId:唯一的会话ID
  • instanceId:GreenAPI实例ID
  • apiTokenInstanceGreenAPI API 代币

发送消息

向指定聊天室发送消息。

参数:

  • sessionId:来自open_Session的会话ID
  • chatId:收件人聊天ID(例如。,1234567890@c.us或group@g.us)
  • message:要发送的消息

获取聊天

检索可用聊天列表。

参数:

  • sessionId:来自open_Session的会话ID

创建组

创建一个新的WhatsApp群组。

参数:

  • sessionId:来自open_Session的会话ID
  • groupName:要创建的组的名称
  • participants:带域的电话号码数组(例如。12345@c.us)

获取聊天记录

从指定的聊天室(个人或组)检索最近的消息。

参数:

  • sessionId:来自open_Session的会话ID
  • chatId:用于检索消息的聊天ID(例如。,1234567890@c.us或group@g.us)
  • count:要检索的邮件数(默认值:50)

重要:要接收聊天历史记录中的传入消息,您需要使用SetSettings方法或通过GreenAPI控制台启用“接收传入消息和文件上的webhooks”设置。如果不启用此设置,聊天记录将仅显示传出的消息。

发送文件

将文件发送到指定的聊天室。

参数:

  • sessionId:来自open_Session的会话ID
  • chatIdWhatsApp聊天ID(例如。,1234567890@c.us)
  • fileUrl:要发送的文件的公共URL
  • fileName:(可选)收件人看到的文件名称
  • caption:(可选)要在文件下方显示的标题文本

添加参与者

将参与者添加到现有的WhatsApp组中。

参数:

  • sessionId:来自open_Session的会话ID
  • groupIdWhatsApp群组的ID(例如。,group@g.us)
  • participantChatId:要添加的参与者的聊天ID(例如。,1234567890@c.us)

删除参与者

从现有WhatsApp群组中删除参与者。

参数:

  • sessionId:来自open_Session的会话ID
  • groupIdWhatsApp群组的ID(例如。,group@g.us)
  • participantChatId:要删除的参与者的聊天ID(例如。,1234567890@c.us)