mcpField
P
Pushplus Mcp Server

Pushplus Mcp Server

本地服务
github.com/pushplus通信协作33 周前更新

关于 Pushplus Mcp Server

Pushplus Mcp Server 是用于发送 pushplus 消息的 MCP 服务,标签说明其使用 Java 开发。它支持多种推送渠道和消息格式,并提供管理 pushplus 账户及服务功能的工具。

主要功能

  1. 01向多个渠道发送消息
  2. 02支持 HTML、Markdown、文本和 JSON
  3. 03跨渠道批量推送
  4. 04提供 pushplus 开放接口工具
  5. 05提供状态、模板和渠道资源

适用场景

  1. 01向微信或邮箱发送提醒
  2. 02向接收者发送格式化消息
  3. 03管理 pushplus 主题或 webhook
  4. 04查询支持的渠道和模板

MCP 相关

向 MCP 客户端提供消息发送和 pushplus 开放接口工具,并提供状态、模板及渠道资源。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"pushplus-MCP-Server-TypeScript": {
"command": "npx",
"args": [
"-y",
"@perk-net/pushplus-mcp-server"
],
"env": {
"PUSHPLUS_TOKEN": "<PUSHPLUS_TOKEN>"
}
}
}
}
启动命令npx -y @perk-net/pushplus-mcp-server
需要配置的环境变量
PUSHPLUS_TOKEN密钥

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@perk-net/pushplus-mcp-server

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

来自项目 README

pushplus mcp server

一个基于 Model Context Protocol (MCP) 的 pushplus 推送服务器,让 AI 助手能够通过 pushplus 发送推送消息到微信、邮箱等渠道。

🎉 现已发布到 NPM!
可直接通过 npm install -g @perk-net/pushplus-mcp-server 安装使用,无需下载源码。

📋 目录

功能特性

  • 🚀 完整的 MCP 支持: 实现 Model Context Protocol 规范
  • 📱 多渠道推送: 支持微信、QQ机器人、邮箱、短信、企业微信等多种推送渠道
  • 🎨 多种消息格式: 支持 HTML、Markdown、纯文本、JSON 等格式
  • 🔧 灵活配置: 支持环境变量配置,便于部署
  • 🛡️ 类型安全: 使用 TypeScript 开发,提供完整的类型支持
  • 📊 状态监控: 提供服务器状态和配置信息查询
  • 🧪 测试友好: 内置配置测试和消息发送测试

🚀 快速开始

方式一:从 NPM 安装(推荐)
npm install -g @perk-net/pushplus-mcp-server

安装完成后,pushplus-mcp 命令将全局可用。

优势:

  • ✅ 安装简单,一条命令搞定
  • ✅ 自动处理依赖关系
  • ✅ 支持全局命令行工具
  • ✅ 无需下载源码
方式二:从源码构建

如果您需要修改代码或进行开发:

# 克隆项目
git clone https://github.com/pushplus/pushplus-MCP-Server-TypeScript.git
cd pushplus-MCP-Server-TypeScript

# 安装依赖
npm install

# 构建项目
npm run build

# 测试配置
npm run test

适用场景:

  • 🛠️ 需要自定义功能
  • 🔧 参与项目开发
  • 📊 需要调试详细日志
获取 pushplus token
  1. 访问 pushplus 官网
  2. 微信扫码登录
  3. 在个人中心获取您的 Token
测试配置
# 设置环境变量
export PUSHPLUS_TOKEN=your_pushplus_token_here

# 测试配置
pushplus-mcp --test

如果配置正确,您会收到一条测试推送消息!

集成到 Claude Desktop
  1. 打开 Claude Desktop 设置 → Developer → Edit Config
  2. 添加配置(根据您的操作系统选择):

NPM 安装用户 - Windows:

{
  "mcpServers": {
    "pushplus": {
      "command": "cmd",
      "args": [
        "/c",
        "npx",
        "-y",
        "@perk-net/pushplus-mcp-server"
      ],
      "env": {
        "PUSHPLUS_TOKEN": "您的Token",
        "PUSHPLUS_SECRET_KEY": "您的SecretKey"
      }
    }
  }
}

NPM 安装用户 - Mac/Linux:

{
  "mcpServers": {
    "pushplus": {
      "command": "npx",
      "args": [
        "-y",
        "@perk-net/pushplus-mcp-server"
      ],
      "env": {
        "PUSHPLUS_TOKEN": "您的Token",
        "PUSHPLUS_SECRET_KEY": "您的SecretKey"
      }
    }
  }
}

源码构建用户:

{
  "mcpServers": {
    "pushplus": {
      "command": "node",
      "args": ["/path/to/pushplus-mcp-server/dist/index.js"],
      "env": {
        "PUSHPLUS_TOKEN": "您的Token",
        "PUSHPLUS_SECRET_KEY": "您的SecretKey"
      }
    }
  }
}

配置文件位置:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  1. 重启 Claude Desktop
开始使用!

在 Claude 中说:

"请发送一条测试推送消息到我的微信"

🎉 恭喜!您已成功设置 pushplus mcp server!

📝 配置说明:当您在 Claude Desktop 配置中设置了 env.PUSHPLUS_TOKEN 后,就不需要创建 .env 文件了。MCP 服务器会自动读取通过 Claude Desktop 传递的环境变量。

📱 功能使用

可用工具
1. send_push_message - 发送推送消息

完整的推送消息工具,对齐最新 /send 接口:

{
  "content": "消息内容(必填)",
  "title": "消息标题(可选)",
  "icon": "消息图标(可选)",
  "template": "html",
  "channel": "wechat",
  "topic": "群组编码(可选)",
  "to": "好友令牌(可选)",
  "pre": "预处理编码(可选,仅供会员使用)",
  "webhook": "webhook编码(可选,非URL)",
  "option": "渠道配置参数(可选,与webhook等价)",
  "callbackUrl": "回调地址(可选)",
  "timestamp": "1632993318000",
  "pushId": "form/doc/excel/webdiff 模板必填"
}
2. send_text_message - 发送文本消息

快速发送纯文本消息:

{
  "content": "纯文本内容",
  "title": "消息标题(可选)",
  "topic": "群组编码(可选)",
  "to": "好友令牌(可选)",
  "pre": "预处理编码(可选)",
  "channel": "wechat"
}
3. send_html_message - 发送HTML消息

发送带有 HTML 格式的消息:

{
  "content": "<h1>HTML内容</h1><p>支持HTML标签</p>",
  "title": "消息标题(可选)",
  "topic": "群组编码(可选)",
  "to": "好友令牌(可选)",
  "pre": "预处理编码(可选)",
  "channel": "wechat"
}
4. send_markdown_message - 发送Markdown消息

发送 Markdown 格式的消息:

{
  "content": "# Markdown标题\n\n支持**粗体**和*斜体*",
  "title": "消息标题(可选)",
  "topic": "群组编码(可选)",
  "to": "好友令牌(可选)",
  "pre": "预处理编码(可选)",
  "channel": "wechat"
}
5. send_json_message - 发送JSON消息

发送 JSON 格式的消息:

{
  "content": "{\"data\": \"JSON格式内容\"}",
  "title": "消息标题(可选)",
  "topic": "群组编码(可选)",
  "to": "好友令牌(可选)",
  "pre": "预处理编码(可选)",
  "channel": "wechat"
}
6. batch_send_message - 多渠道批量发送

对应 /batchSend 接口,可同时向多个渠道发送:

{
  "content": "消息内容",
  "channel": "wechat,mail,webhook",
  "option": ",,webhook编码",
  "title": "消息标题(可选)",
  "template": "html",
  "pushId": "form/doc/excel/webdiff 模板必填"
}
7. 开放接口工具(open_*)

配置 PUSHPLUS_TOKEN + PUSHPLUS_SECRET_KEY 后可用,覆盖全部 /open/** 接口,命名规则:open_<模块>_<动作>。PUSHPLUS_TOKEN 与发送消息使用同一 token。

模块示例工具
authopen_get_access_key
useropen_user_my_info / open_user_token / open_user_send_count
messageopen_message_list / open_message_send_result / open_message_delete
tokenopen_token_list / open_token_add / open_token_edit / open_token_delete
topicopen_topic_list / open_topic_add / open_topic_detail 等
topicUseropen_topic_user_subscriber_list / open_topic_user_add_blacklist 等
friendopen_friend_list / open_friend_add_blacklist 等
webhookopen_webhook_list / open_webhook_add 等
settingopen_setting_list_user_default 等
preopen_pre_list / open_pre_test 等
forwardRuleopen_forward_rule_list / open_forward_rule_add / open_forward_rule_test / open_forward_rule_save_setting 等
forwardLogopen_forward_log_list / open_forward_log_detail
channelopen_mail_list / open_mp_list / open_cp_list
clawBotopen_clawbot_bot_info / open_clawbot_get_msg 等
cmccopen_cmcc_bind / open_cmcc_info / open_cmcc_unbind / open_cmcc_test
qqBotopen_qqbot_my_bots / open_qqbot_get_bind_link / open_qqbot_bot_info / open_qqbot_set_default / open_qqbot_group_list / open_qqbot_list / open_qqbot_add / open_qqbot_custom_bot_preview / open_qqbot_custom_bot_add / open_qqbot_custom_bot_delete 等(绑定类接口支持 botAppId 指定自有机器人)
file/imageopen_file_upload_image / open_user_image_list
payopen_pay_transfer_order(高风险)

说明:

  • 开放接口实际地址形如 https://www.pushplus.plus/api/open/...;发送接口仍为 /send
  • MCP 会自动换取并缓存 access-key(提前约 60 秒刷新)
  • PUSHPLUS_TOKEN 须为用户 token(开放接口不支持消息 token)
  • 使用前需在官网开启开放接口并配置安全 IP
  • 各 open_* 工具请求/响应字段说明对齐官方文档:https://www.pushplus.plus/doc/guide/openApi.html
  • 删除/提现/解绑等工具 description 中标注「高风险」
可用资源
1. pushplus://status - 服务器状态

获取服务器运行状态和配置信息

2. pushplus://templates - 支持的模板

获取所有支持的消息模板类型

3. pushplus://channels - 支持的渠道

获取所有支持的推送渠道信息

支持的消息模板
模板类型描述备注
htmlHTML格式消息默认模板
txt纯文本消息
jsonJSON格式消息
markdownMarkdown格式消息
cloudMonitor阿里云监控报警定制模板
jenkinsJenkins插件定制模板
route路由器插件定制模板
pay支付成功通知模板
order订单支付成功模板
verify实名认证模板
form表单格式模板需传 pushId
doc文档格式模板需传 pushId
excel表格格式模板需传 pushId
webdiff网页差异对比模板需传 pushId
支持的推送渠道
渠道类型描述备注
wechat微信公众号推送默认渠道
webhook第三方webhook推送传 webhook/option 编码(非URL)
cp企业微信应用推送需要配置企业微信应用
mail邮箱推送需要绑定邮箱
sms短信推送需要绑定手机号
voice语音推送需要绑定手机号
extension浏览器插件推送
appApp推送需要先登录App
clawbot微信ClawBot推送需要配置ClawBot
cmcc新消息ClawBot推送仅支持中国移动;需先绑定 Channel API Key;不填 option
qqQQ机器人推送需先绑定(支持官方机器人和自有机器人);不填 option 由默认机器人发给自己,填配置编码发到对应QQ群或用指定机器人发给自己

🛠️ 命令行工具

NPM 安装用户
# 显示帮助信息
pushplus-mcp --help

# 显示版本信息
pushplus-mcp --version

# 测试配置(包含发送测试消息)
pushplus-mcp --test

# 显示当前配置
pushplus-mcp --config

# 启动服务器(默认命令)
pushplus-mcp
源码构建用户
# 显示帮助信息
node dist/index.js --help

# 显示版本信息
node dist/index.js --version

# 测试配置(包含发送测试消息)
npm run test

# 显示当前配置
node dist/index.js --config

# 启动服务器(默认命令)
npm start

# 开发模式
npm run dev

# 监听模式构建
npm run watch
环境变量
变量名描述默认值必需
PUSHPLUS_TOKEN用户 Token(发送与开放接口共用)-✅
PUSHPLUS_SECRET_KEY开放接口 secretKey-调用 open_* 时需要
PUSHPLUS_BASE_URLAPI 根地址https://www.pushplus.plus❌
PUSHPLUS_OPEN_API_PREFIX开放接口前缀(发送不走此前缀)/api❌
MCP_SERVER_NAMEMCP 服务器名称pushplus-mcp-server❌
MCP_SERVER_VERSIONMCP 服务器版本1.1.0❌
DEFAULT_TEMPLATE默认消息模板html❌
DEFAULT_CHANNEL默认推送渠道wechat❌
DEBUG调试模式false❌

📖 使用示例

1. 基本文本推送

在 Claude 中询问:

请使用 pushplus 发送一条测试消息,标题是"测试消息",内容是"这是一条来自 Claude 的测试消息"

Claude 会调用 send_text_message 工具发送纯文本消息。

2. HTML 格式推送
请发送一条 HTML 格式的消息,标题"系统通知",内容包含:
- 一个标题
- 一个列表
- 一些样式

Claude 会调用 send_html_message 工具发送带样式的消息。

3. Markdown 格式推送
请发送一条 Markdown 格式的消息,包含代码块和表格

Claude 会调用 send_markdown_message 工具发送 Markdown 格式的消息。

4. JSON 格式推送
请发送一条 JSON 格式的消息,标题"API响应",内容为用户数据的JSON格式

Claude 会调用 send_json_message 工具发送 JSON 格式的消息,适合发送结构化数据。

5. 自定义参数推送
请使用完整参数发送推送消息:
- 标题:重要通知
- 内容:HTML 格式的内容
- 推送渠道:微信
- 群组:开发团队
- 好友令牌:指定接收人

Claude 会调用 send_push_message 工具,使用所有可用参数。

6. 好友推送
请发送消息给特定好友,使用好友令牌:token1,token2

使用 to 参数可以指定具体的接收人,支持多人推送(逗号分隔)。

7. 理解响应结果

⚠️ 重要说明:HTTP 请求成功(状态码 200)并不代表消息发送成功,只是表示请求已被服务器接收处理。

响应结果解释

当您发送消息后,会收到如下格式的响应:

{
  "code": 200,
  "msg": "请求成功",
  "data": "abc123def456"
}

字段说明:

  • code: HTTP 响应状态码
    • 200: 请求成功被服务器接收
    • 其他值: 请求失败,需检查参数或配置
  • msg: 服务器返回的消息说明
  • data: 📋 流水号(重要!)- 这是消息的唯一标识符,可用于后续查询消息发送状态
  • count: 消息发送数量

📌 注意事项:

  • 收到 code: 200 只表示服务器接受了推送请求
  • 实际的消息发送可能需要一些时间完成
  • 如需确认消息是否真正送达,请保存返回的 data(流水号)用于后续状态查询
8. 查询服务器状态

询问 Claude:

请查看 pushplus mcp server 的状态信息

Claude 会读取 pushplus://status 资源,显示服务器状态。

9. 查看支持的功能

询问 Claude:

pushplus 支持哪些消息模板?

Claude 会读取 pushplus://templates 资源,显示所有支持的模板类型。

询问 Claude:

pushplus 支持哪些推送渠道?

Claude 会读取 pushplus://channels 资源,显示所有支持的推送渠道。

🔍 故障排除

常见问题
1. Token 无效
❌ 配置验证失败: PUSHPLUS_TOKEN 格式不正确,应为32位字符串

解决方案:

  • 检查您的 pushplus token 是否正确,Token 应该是32位的字母数字组合
  • 确认 Token 是否有效且有足够的推送额度
2. 推送失败
❌ 发送失败: HTTP请求失败: 400 Bad Request

解决方案:

  • 检查消息内容是否符合格式要求
  • 确认 Token 有效且有足够的推送额度
  • 检查网络连接
  • 确认消息标题不超过100字符
3. 理解响应状态
✅ HTTP请求成功
📊 响应详情:
- 状态码: 200
- 消息: 请求成功
- 📋 流水号: abc123def456 (重要!可用于查询消息发送状态)
- 计数: 1
⚠️ 注意:HTTP请求成功不代表消息已送达,实际发送可能需要一些时间。

说明:

  • 状态码 200 表示服务器成功接收了推送请求
  • 流水号 是消息的唯一标识符,请妥善保存用于后续查询
  • 消息实际送达可能需要几秒到几分钟的时间
  • 如需确认消息是否真正送达,可使用流水号查询消息状态
4. 配置文件问题
❌ 配置验证失败: 缺少 PUSHPLUS_TOKEN 环境变量

解决方案:

  • 确保 .env 文件存在并包含正确的配置
  • 或者通过环境变量直接设置 PUSHPLUS_TOKEN(如 Claude Desktop 配置)
  • 检查环境变量是否正确传递到 MCP 服务器
5. MCP 连接失败

解决方案:

  • 确认 Claude Desktop 配置正确
  • 检查命令和参数是否正确
  • 重启 Claude Desktop
  • 确认 NPM 包已正确安装
6. NPM 包无法找到

解决方案:

# 重新安装
npm uninstall -g @perk-net/pushplus-mcp-server
npm install -g @perk-net/pushplus-mcp-server

# 验证安装
pushplus-mcp --version

👨‍💻 开发

项目结构
pushplus-mcp-server/
├── src/
│   ├── index.ts          # 程序入口
│   ├── server.ts         # MCP 服务器实现
│   ├── pushplus.ts       # pushplus API 客户端
│   └── config.ts         # 配置管理
├── dist/                 # 编译输出目录
├── package.json          # 项目配置
├── tsconfig.json         # TypeScript 配置
└── README.md            # 项目文档
开发脚本
# 构建项目
npm run build

# 监听模式构建
npm run watch

# 清理构建文件
npm run clean

# 重新构建
npm run rebuild

# 开发模式(构建并启动)
npm run dev
TypeScript 支持

项目使用 TypeScript 开发,提供完整的类型支持:

  • 严格类型检查: 启用 TypeScript 严格模式
  • Zod 验证: 使用 Zod 进行运行时类型验证
  • 完整类型定义: 所有 API 和配置都有完整的类型定义
贡献指南
  1. Fork 项目
  2. 创建功能分支
  3. 提交更改
  4. 推送到分支
  5. 创建 Pull Request

许可证

MIT License - 详见 LICENSE 文件

相关链接


🎉 享受使用 pushplus mcp server!

如有问题,欢迎提交 Issue 或 Pull Request

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。