WhatsApp自动化API

一个通过Evolution API实现Claude与WhatsApp交互的MCP服务器,支持消息发送、联系人管理、群组操作等功能。

  • by aiteks-ltda
  • TypeScript
  • 本地部署
  • 33 星标
  • 更新于
在 GitHub 查看 aiteks-ltda/mcp-evolution-whatsapp-api

使用说明

MCP Evolution API

一个与Claude集成的模型上下文协议(MCP)服务器 进化API 用于WhatsApp自动化。

概述

这个MCP服务器允许Claude通过Evolution API与WhatsApp进行交互,从而实现诸如以下功能:

  • 管理WhatsApp实例
  • 发送各种类型的消息
  • 与联系人和群组协作
  • 配置Webhooks和设置

📂 项目结构

mcp-evo-api/
├── src/
│   ├── tools/          # MCP tools implementation for Evolution API
│   ├── utils/          # Shared utilities, including Evolution API client
│   ├── main.ts         # Server entry point
│   └── types.ts        # Shared type definitions
├── scripts/            # Helper scripts
├── biome.json          # Linting configuration
├── tsconfig.json       # TypeScript configuration
├── docker-compose.yml  # Docker Compose configuration
├── Dockerfile          # Docker build configuration
└── package.json        # Project dependencies

🚀 快速设置

环境设置

创建一个 .env 请使用您的Evolution API凭据文件:

EVOLUTION_API_URL=https://evo-api.decisao.ai/
EVOLUTION_API_KEY=REPLACE_WITH_YOUR_REAL_KEY

注意:您提供了API URL和一个密钥。出于安全考虑,切勿将真实的API密钥提交到仓库或公开共享。请使用本地 .env 在生产环境中使用文件或密钥管理器。

📋 部署选项

环境 步骤 命令
本地开发 1. 克隆并安装
2. 以开发模式运行
git clone https://github.com/aiteks-ltda/mcp-evo-api.git && cd mcp-evo-api && bun install
bun run dev
本地生产 1. 克隆并安装
2. 构建并运行
git clone https://github.com/aiteks-ltda/mcp-evo-api.git && cd mcp-evo-api && bun install
bun run build && bun run dist/main.js
Docker Compose 使用 Docker Compose 运行 git clone https://github.com/aiteks-ltda/mcp-evo-api.git && cd mcp-evo-api
docker-compose up -d
Docker 构建并运行容器 docker run -d -p 3000:3000 -e EVOLUTION_API_URL=yoururl -e EVOLUTION_API_KEY=yourkey --name mcp-evo-api ghcr.io/aiteks-ltda/mcp-evo-api:latest

Claude 桌面配置

将此添加到您的Claude Desktop配置文件中(通常位于 ~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "evo-api": {
      "command": "node",
      "args": [
        "/path/to/your/mcp-evo-api/dist/main.js"
      ]
    }
  }
}

如果使用Docker部署:

{
  "mcpServers": {
    "evo-api": {
      "url": "http://localhost:3000"
    }
  }
}

📊 实施状态

类别 已实施 待实施
核心API ✅ 获取信息
✅ 创建实例
✅ 获取实例
✅ 实例连接
✅ 重启实例
✅ 连接状态
✅ 登出实例
✅ 删除实例
✅ 设置在线状态
❌ 检查是否为WhatsApp
Webhook & 设置 ✅ 设置Webhook
✅ 查找Webhook
✅ 设置设置
✅ 查找设置
消息传递 ✅ 发送纯文本
✅ 发送状态
✅ 发送媒体
✅ 发送WhatsApp音频
✅ 发送贴纸
✅ 发送位置
✅ 发送联系人
✅ 发送表情反应
✅ 发送投票
✅ 发送列表
✅ 发送按钮
❌ 标记消息为已读
❌ 将消息标记为未读
❌ 存档聊天记录
❌ 删除对所有人可见的消息
❌ 更新消息
❌ 发送在线状态(聊天控制)
聊天与联系人 ✅ 查找联系人
✅ 查找聊天
❌ 更新屏蔽状态
❌ 获取头像URL
❌ 获取Base64
❌ 查找信息
❌ 查找状态消息
团体;小组 ✅ 通过JID查找群组
✅ 获取所有群组
✅ 查找群成员
❌ 创建群
❌ 更新群组照片
❌ 更新群组主题
❌ 更新群组描述
❌ 获取邀请码
❌ 撤销邀请码
❌ 发送群组邀请
❌ 通过邀请码查找群组
❌ 更新群组成员
❌ 更新群组设置
❌ 切换瞬时消息(或:开启/关闭临时消息)
❌ 退出群组
配置文件设置 ❌ 获取商业资料
❌ 获取配置文件
❌ 更新个人资料名称
❌ 更新个人资料状态
❌ 更新个人资料照片
❌ 删除头像
❌ 获取隐私设置
❌ 更新隐私设置
机器人集成 ❌ Typebot 集成
❌ OpenAI 集成
❌ 进化机器人
❌ Dify 机器人
❌ Flowise Bot(注:此处“❌”可能表示某种否定、错误或特定标识,但在此语境下直接翻译为中文时,通常保留原样或根据上下文具体解释,这里直接作为符号处理)
其他集成 ❌ Chatwoot
❌ WebSocket(网络套接字协议)
❌ SQS(注:SQS在英文中通常指“Simple Queue Service”,即亚马逊的简单队列服务,但在此上下文中仅作为一个标识或代码提及,故直接保留原样翻译)
❌ RabbitMQ

如需更多信息,请参阅 进化API文档。

示例

  • examples/hono-bun/ - 为Bun提供的小型Hono服务器(保存的示例)。请查看。 examples/hono-bun/README.md 用于执行说明。