一个轻量级的通知服务,与MCP(模型上下文协议)集成,在AI代理完成任务时发送网络钩子。

最初由tuberrabbit@gmail.com创建。
目前由zudsniper维护。
npm install -g mcp-server-notifier
docker pull zudsniper/mcp-server-notifier:latest
# 使用环境变量运行
docker run -e WEBHOOK_URL=https://your-webhook-url -e WEBHOOK_TYPE=discord zudsniper/mcp-server-notifier
git clone https://github.com/zudsniper/mcp-server-notifier.git
cd mcp-server-notifier
npm install
npm run build
MCP,然后点击+ 添加新的全局MCP服务器mcp-server-notifier。{
"mcpServers": {
"notifier": {
"command": "npx",
"args": [
"-y",
"mcp-server-notifier"
],
"env": {
"WEBHOOK_URL": "https://ntfy.sh/webhook-url-example",
"WEBHOOK_TYPE": "ntfy"
}
}
}
}
默认情况下,通知器支持几种网络钩子类型:
您可以通过环境变量指定网络钩子类型和URL:
env WEBHOOK_URL="https://your-webhook-url" WEBHOOK_TYPE="discord" npx -y mcp-server-notifier
WEBHOOK_TOKEN是一个可选的环境变量。当设置时,它将作为Bearer令牌包含在仅针对ntfy网络钩子请求的Authorization头中。如果未设置WEBHOOK_TOKEN,则不发送任何授权头。
示例:
env WEBHOOK_URL="https://ntfy.sh/your-topic" WEBHOOK_TYPE="ntfy" WEBHOOK_TOKEN="your-secret-token" npx -y mcp-server-notifier
对于更高级的配置,您可以创建一个webhook-config.json文件:
{
"webhook": {
"type": "discord",
"url": "https://discord.com/api/webhooks/your-webhook-url",
"name": "My Notifier"
},
"imgur": {
"clientId": "your-imgur-client-id"
}
}
详情和示例,请参阅配置指南。
详细使用说明,请参阅使用指南。
notify
message - 通知的文本内容title(可选)- 通知的标题link(可选)- 包含在通知中的URL(用于ntfy的点击操作)imageUrl(可选)- 要包含的图片URL(遗留,建议使用image或attachments)image(可选)- 要上传到Imgur的本地图片文件路径priority(可选,仅限ntfy)- 通知优先级(1-5)attachments(可选,仅限ntfy)- 要附加的URL数组template(可选,仅限ntfy)- 使用预定义模板:状态、问题、进度、问题templateData(可选,仅限ntfy)- 填充所选模板的数据actions(可选,仅限ntfy)- 操作按钮定义数组(view或http)注意:模板功能目前正在开发中,并且支持有限。模板最适合与ntfy.sh一起使用,但可能尚未完全实现所有网络钩子提供者。有关未来实施计划,请参阅ROADMAP.md文件。
当使用ntfy.sh作为您的网络钩子提供商时,可以使用以下预定义模板:
状态模板(status)
status - 当前状态(例如,“在线”、“已完成”、“待处理”)details(可选)- 关于状态的额外信息timestamp(可选)- 记录此状态的时间component(可选)- 这个状态适用的系统组件问题模板(question)
question - 提出的主要问题context(可选)- 问题的背景信息options(可选)- 可能的答案选项deadline(可选)- 需要在何时之前回复进度模板(progress)
title - 任务或过程的名称current - 当前进度值total - 达到完成所需的总值percentage(可选)- 明确的百分比值(如果没有提供,则计算得出)eta(可选)- 预计完成时间details(可选)- 关于进度的额外信息问题模板(problem)
title - 问题的简短描述description(可选)- 问题的详细信息severity(可选)- 问题的严重程度(例如,“关键”,“警告”)source(可选)- 问题的来源timestamp(可选)- 问题发生的时间solution(可选)- 解决问题的建议方法使用模板的示例:
// 发送进度通知
{
"template": "progress",
"templateData": {
"title": "数据库备份",
"current": 75,
"total": 100,
"eta": "剩余2分钟",
"details": "正在压缩备份文件"
},
"priority": 3
}
MCP Server Notifier可用作Docker镜像:
docker pull zudsniper/mcp-server-notifier:latest
使用环境变量运行:
docker run -e WEBHOOK_URL=https://your-webhook-url -e WEBHOOK_TYPE=discord zudsniper/mcp-server-notifier
示例网络钩子配置可在examples目录中找到。
git clone https://github.com/zudsniper/mcp-server-notifier.git
cd mcp-server-notifier
npm install
npm run build
# 如果还没有安装MCP Inspector,请先安装
npm install -g @modelcontextprotocol/inspector
# 使用Inspector启动服务器
npx @modelcontextprotocol/inspector node build/index.js
要发布新版本:
package.json中的版本号release分支CI/CD所需仓库密钥:
DOCKERHUB_USERNAME - Docker Hub用户名DOCKERHUB_TOKEN - Docker Hub访问令牌NPM_TOKEN - npm访问令牌MIT许可证 - 详情见LICENSE文件。
欢迎贡献!请随时提交Pull Request。
此MCP已通过MCP Review认证。
认证页面:https://mcpreview.com/mcp-servers/tuberrabbit/mcp-server-notifier