Token导航 LogoToken导航TokenDH.com
waMCP (Delltrak) logo
AI代理stdio官方级别未说明来源级核验

waMCP (Delltrak)

MCP Server

tsc

为AI代理提供原生WhatsApp集成的MCP服务器,支持Baileys和Meta Cloud API双通道后端,实现零配置工具自动发现。

工具数

62

提示词数

0

GitHub Stars

14

资源数

0
AI代理集成多协议支持TypeScriptClaudeClaude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

delltrak

提供方

delltrak

最后核验

2026/5/17 20:23

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx tsc --noEmit # Type-check only

详细介绍

🟢 WA MCP

The first WhatsApp integration built natively for AI Agents.

Full MCP server exposing WhatsApp as discoverable tools, resources, and real-time notifications.

Quick Start • Features • Tools • Architecture • Configuration • Docker • Contributing

______________________________________________________________________

🤖 什么是WA MCP?

WA-MCP 是一个使用TypeScript构建的WhatsApp MCP服务器,它使AI代理能够通过 模型上下文协议。它支持这两种功能 百利 (WhatsApp网络)和 Meta Cloud API 作为双通道后端,可与 码头工人 在一个命令中。

您的代理连接一次并自动发现 63工具, 10资源,以及 12个实时事件 --零配置,零REST包装,零粘合代码。

Your AI Agent ←→ MCP Protocol ←→ WA MCP ←→ WhatsApp

您的代理只需编写HTTP客户端、解析webhook有效负载并将端点手动映射到工具即可 连接并离开.开箱即用 克劳德, 谷歌ADK, LangChain,以及任何与MCP兼容的AI代理框架。

💡 主控程序 (模型上下文协议)是将AI代理连接到工具和数据的开放标准。WA MCP通过流式HTTP和stdio传输以本地方式使用MCP。

______________________________________________________________________

🚀 快速开始

使用Docker执行一个命令

docker compose up

就是这样。WA MCP+Redis,准备就绪 http://localhost:3000/mcp.

或在本地运行

# Prerequisites: Node.js >= 22, Redis running
npm install
cp .env.example .env

# Development (stdio transport)
npm run dev

# Production (HTTP transport)
npm run build && npm start

连接您的代理

🐍 Google ADK (Python)

from google.adk.tools.mcp_tool import McpToolset

tools = McpToolset(url="http://localhost:3000/mcp")

# Agent auto-discovers 63 WhatsApp tools
# wa_create_instance, wa_send_text, wa_send_image, ...

🦜 LangChain

from langchain_mcp import McpToolkit

toolkit = McpToolkit(server_url="http://localhost:3000/mcp")
tools = toolkit.get_tools()

💻 Claude Desktop

添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "whatsapp": {
      "command": "node",
      "args": ["path/to/wa-mcp/dist/index.js"],
      "env": {
        "WA_TRANSPORT": "stdio",
        "WA_REDIS_URL": "redis://localhost:6379"
      }
    }
  }
}

______________________________________________________________________

✨ 特性

功能描述
🔌MCP本地可流式传输HTTP+stdio。没有REST,就没有webhooks。
📱双通道Baileys(WhatsApp Web)+Meta Cloud API-相同的界面。
🔄多实例从单个服务器运行1-50个WhatsApp号码。
📨完整消息文本、图像、视频、音频、文档、投票、反应、回复、转发、编辑、删除、查看一次。
👥群组创建、管理成员、提升/降级管理员、设置、邀请链接、加入请求、临时消息。
👤联系人和个人资料号码检查、阻止/取消阻止、业务配置文件、隐私、状态更新。
📡实时事件通过SSE的12种通知类型:消息、打字、组、呼叫、连接状态。
速率限制BullMQ队列阻止WhatsApp禁令(20 msg/min Baileys,80 msg/min Cloud)。
🔁自动重新连接具有指数回退的自动重新连接。
🗃️持久用于会话、消息、联系人和组的SQLite存储。
🐳单个集装箱docker compose up --只有Redis作为外部依赖。

______________________________________________________________________

🛠️ 工具

WA MCP暴露 63工具 跨越9个领域。所有工具都使用 wa_ 前缀。

📋 Instance Management (8 tools)

工具说明
wa_create_instance创建新的WhatsApp连接
wa_connect_instance连接(生成二维码)
wa_disconnect_instance优雅地断开连接
wa_delete_instance永久删除实例
wa_restart_instance断开连接+重新连接
wa_get_qr_code获取base64格式的二维码(Baileys)
wa_get_pairing_code获取配对码(Baileys)
wa_set_cloud_credentials设置云API令牌

💬 Messaging (17 tools)

工具说明
wa_send_text发送短信
wa_send_image发送带有标题的图像
wa_send_video发送带有字幕的视频
wa_send_audio发送音频/语音备忘
wa_send_document发送文件/文档
wa_send_location发送GPS位置
wa_send_contact发送vCard联系人
wa_send_poll创建投票
wa_send_reaction用表情符号做出反应
wa_send_link_preview发送带有预览的URL
wa_forward_message转发消息
wa_edit_message编辑已发送的消息
wa_delete_message删除邮件
wa_pin_message固定消息
wa_send_view_once发送一次查看媒体
wa_send_presence显示打字/录音
wa_mark_read将邮件标记为已读

💭 Chat Management (6 tools)

工具说明
wa_get_messages获取聊天消息历史记录
wa_archive_chat存档/取消存档
wa_pin_chat闲聊/不愉快聊天
wa_mute_chat静音/取消静音
wa_delete_chat删除聊天
wa_clear_chat清除聊天记录

👥 Groups (14 tools)

工具说明
wa_create_group创建组
wa_group_add_participants添加成员
wa_group_remove_participants删除成员
wa_group_promote晋升为管理员
wa_group_demote从管理员降级
wa_group_update_subject更改组名
wa_group_update_description变更说明
wa_group_update_settings更改设置
wa_group_leave离开小组
wa_group_get_invite_code获取邀请链接
wa_group_revoke_invite撤销邀请链接
wa_group_join通过邀请码加入
wa_group_toggle_ephemeral切换消失的消息
wa_group_handle_request批准/拒绝加入请求

📇 Contacts (5 tools)

工具说明
wa_search_contact按姓名或电话搜索联系人
wa_check_number_exists检查号码是否在WhatsApp上
wa_block_contact阻止联系
wa_unblock_contact解除阻止联系人
wa_get_business_profile获取企业简介

👤 Profile (5 tools)

工具说明
wa_update_profile_picture设置个人资料图片
wa_remove_profile_picture删除个人资料图片
wa_update_profile_name更改显示名称
wa_update_profile_status更改状态文本
wa_update_privacy更新隐私设置

📢 Status / Stories (3 tools)

工具说明
wa_send_text_status发布文本状态
wa_send_image_status发布图像状态
wa_send_video_status发布视频状态

📰 Newsletter (3 tools)

工具说明
wa_newsletter_follow关注时事通讯
wa_newsletter_unfollow取消关注时事通讯
wa_newsletter_send发送至时事通讯

📞 Calls (1 tool)

工具说明
wa_reject_call拒绝来电

______________________________________________________________________

📖 资源

资源通过以下方式公开WhatsApp的只读状态 whatsapp:// URI:

URI描述
whatsapp://instances列出所有实例
whatsapp://instances/{id}实例详细信息+队列统计信息
whatsapp://instances/{id}/contacts所有联系人
whatsapp://instances/{id}/chats活跃的对话
whatsapp://instances/{id}/groups所有组
whatsapp://instances/{id}/groups/{gid}组元数据
whatsapp://instances/{id}/messages/{chatId}消息历史记录
whatsapp://instances/{id}/profile个人资料
whatsapp://instances/{id}/privacy隐私设置
whatsapp://instances/{id}/blocklist阻止联系人

______________________________________________________________________

📡 实时通知

事件通过SSE(服务器发送事件)推送到代理:

事件触发器
whatsapp/message.received新收到的消息
whatsapp/message.updated状态更改(已发送→ 交付→ 阅读)
whatsapp/message.deleted邮件已删除
whatsapp/message.reaction添加/删除表情符号反应
whatsapp/message.edited消息已编辑
whatsapp/presence.updated打字/录音/在线
whatsapp/chat.updated聊天元数据已更改
whatsapp/group.updated组信息已更改
whatsapp/group.participants_changed成员添加/删除/升级/降级
whatsapp/contact.updated联系方式已更改
whatsapp/connection.changed实例状态更改(包括base64格式的QR)
whatsapp/call.received来电

______________________________________________________________________

🏗️ 建筑

┌─────────────────────────────────────────────┐
│              AI Agent Runtime               │
│    (Google ADK, Claude, LangChain, ...)     │
└──────────────────┬──────────────────────────┘
                   │  MCP Streamable HTTP
┌──────────────────▼──────────────────────────┐
│              WA MCP Server                  │
│                                             │
│  ┌────────────────────────────────────────┐ │
│  │  Layer 1 — MCP Transport (HTTP/stdio) │ │
│  ├────────────────────────────────────────┤ │
│  │  Layer 2 — MCP Core                   │ │
│  │  63 Tools │ 10 Resources │ 12 Events  │ │
│  ├────────────────────────────────────────┤ │
│  │  Layer 3 — Services                   │ │
│  │  Instance Manager │ Queue │ Dedup     │ │
│  ├────────────────────────────────────────┤ │
│  │  Layer 4 — Channel Abstraction        │ │
│  │  ┌──────────────┐ ┌────────────────┐  │ │
│  │  │   Baileys    │ │   Cloud API    │  │ │
│  │  │  (WebSocket) │ │    (HTTPS)     │  │ │
│  │  └──────────────┘ └────────────────┘  │ │
│  └────────────────────────────────────────┘ │
│       SQLite (Drizzle)    BullMQ (Redis)    │
└─────────────────────────────────────────────┘
                   │
                   ▼  WebSocket / HTTPS
          WhatsApp Servers

双通道设计

贝利云API
协议WhatsApp Web(WebSocket)元官方(HTTPS)
身份验证二维码/配对码访问令牌
成本免费每次对话定价
合规性非官方Meta批准
最适合开发、测试、小批量生产、企业

两个后端实现相同的功能 ChannelAdapter 界面。你的代理不知道或不关心哪个是活动的——这些工具的工作原理是相同的。

______________________________________________________________________

⚙️ 配置

复制 .env.example.env 并配置:

变量默认值描述
WA_TRANSPORThttphttp (流式HTTP)或 stdio
WA_MCP_API_KEY--承载令牌身份验证。Unset=无身份验证(dev)
WA_MCP_PORT3000HTTP服务器端口
WA_REDIS_URLredis://localhost:6379BullMQ队列的Redis
WA_LOG_LEVELinfodebuginfowarnerror
WA_BAILEYS_RATE_LIMIT20每个Baileys实例的消息数/分钟
WA_CLOUD_RATE_LIMIT80每个云API实例的消息数/分钟
WA_MESSAGE_RETENTION_DAYS30自动删除旧邮件
WA_AUTO_RECONNECTtrue断开连接时自动重新连接
WA_MEDIA_CACHE_MAX_MB500媒体缓存大小限制
WA_CLOUD_WEBHOOK_SECRET--元webhook验证
WA_CLOUD_WEBHOOK_PORT3001Webhook接收器端口
WA_VERSION_CHECKtrue每日WhatsApp网络版本检查

______________________________________________________________________

🐳 码头工人

生产

docker compose up -d

服务:

  • wa-mcp --端口上的MCP服务器 3000
  • 瑞迪斯 --具有AOF持久性的BullMQ后端

健康检查

curl http://localhost:3000/health
{
  "status": "ok",
  "uptime": 3600,
  "instances": { "total": 3, "connected": 2, "disconnected": 1 },
  "version": "1.0.0"
}

资源需求

实例RAMCPU磁盘
1–5256 MB0.5 vCPU1 GB
5–20512 MB1 vCPU5 GB
20–501 GB2 vCPU10 GB

______________________________________________________________________

📁 项目结构

src/
├── index.ts                     # Entry point (HTTP/stdio)
├── constants.ts                 # Defaults and limits
├── server/mcp.ts                # MCP server setup
├── tools/                       # 🔧 63 MCP tools (9 files)
├── resources/                   # 📖 10 MCP resources (8 files)
├── notifications/events.ts      # 📡 12 event types
├── channels/
│   ├── channel.interface.ts     # ChannelAdapter contract
│   ├── baileys/                 # Baileys implementation
│   └── cloud-api/               # Cloud API implementation
├── services/
│   ├── instance-manager.ts      # Instance lifecycle
│   ├── message-queue.ts         # BullMQ rate limiting
│   ├── dedup.ts                 # Message deduplication
│   └── media.ts                 # Media handling
├── db/
│   ├── schema.ts                # Drizzle table definitions
│   └── client.ts                # SQLite connection
├── schemas/                     # Zod validation (9 files)
└── types/                       # TypeScript definitions

______________________________________________________________________

🗺️ 路线图

  • \[x\] 第一阶段 --基础:Baileys适配器、短信、QR认证、实例管理
  • \[x\] 第2阶段 --完整消息传递:所有媒体类型、数据消除、反应、编辑、转发
  • \[x\] 第三期 --群组、联系人、个人资料、状态/故事、时事通讯
  • \[x\] 阶段4 -云API适配器:双通道统一接口
  • \[x\] 阶段5 --强化:错误恢复、CI/CD、测试、文档、v1.0版本
  • \[x\] 第6阶段 --Baileys v7升级,LID支持,联系人同步,消息持久化

______________________________________________________________________

🤝 贡献

欢迎投稿!以下是代码库的组织方式:

  1. 每个域一个文件 --工具、资源、模式和通道都有特定于域的文件
  2. Zod模式适用于一切 --所有工具输入都使用严格的Zod模式进行验证 src/schemas/
  3. 两个适配器 -新功能应该在Baileys中实现,并在Cloud API中进行存根
  4. 分层体系结构 --工具→ 服务→ 频道。无跨层导入。
  5. 结构化日志记录 --使用皮诺,永远不要 console.log
# Development
npm run dev          # Start with stdio transport
npm run build        # Type-check + compile
npx tsc --noEmit     # Type-check only

______________________________________________________________________

📄 许可证

麻省理工学院——随心所欲。

______________________________________________________________________

Built for the agentic era.

Stop writing REST wrappers. Let your agent discover WhatsApp.

目录标签

目录标签

AI代理集成多协议支持TypeScriptClaude本地部署WhatsApp自动化实时通讯无代码配置

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

tsc

工具数量(toolCount,工具数)

62

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP