Token导航 LogoToken导航TokenDH.com
Ntfy MCP Notification logo
开发工具未说明官方级别未说明来源级核验

Ntfy MCP Notification

MCP Server

一个通过ntfy.sh发送推送通知的MCP服务器,用于在Claude长时间运行任务时请求用户输入或确认。

工具数

2

提示词数

0

GitHub Stars

0

资源数

0
开发工具JavaScriptClaude开源Claude

安装说明

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

作者 / 组织

mahmoud-bebars

提供方

mahmoud-bebars

最后核验

2026/5/17 20:22

快速接入

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

详细介绍

ntfy MCP通知服务器

](https://www.npmjs.com/package/ntfy-mcp-notification) ![License: MIT](https://opensource.org/licenses/MIT) ](https://nodejs.org)

MCP(模型上下文协议)服务器,通过以下方式发送推送通知 ntfy.sh 当Claude在长时间运行的任务中需要用户输入或确认时。

概述

当Claude Code运行长时间的操作或遇到需要您输入的决策时,您可能没有积极观察。此MCP服务器通过ntfy.sh向您的手机、平板电脑或台式机发送推送通知,使您能够及时响应。

特性

  • 🔔 推送通知:通过ntfy.sh向任何设备发送通知
  • 🎯 两个工具:

- send_notification:发送基本通知 - request_user_confirmation:发送具有紧急级别的确认请求

  • 🔧 可配置的:优先级、自定义标记和服务器URL
  • 🆓 免费&开放:使用ntfy.sh(无需帐户)
  • 🔒 注重隐私:不收集数据,通知仅包含您指定的内容

先决条件

  • Node.js 18+ (对于本地人 fetch API支持)
  • ntfy.sh主题 (免费创建一个 ntfy.sh)

安装

通过npx(推荐)

无需安装!直接使用Claude Code:

{
  "mcpServers": {
    "ntfy-notification": {
      "command": "npx",
      "args": ["-y", "ntfy-mcp-notification"],
      "env": {
        "NTFY_TOPIC": "your-unique-topic-name"
      }
    }
  }
}

通过npm(全局安装)

npm install -g ntfy-mcp-notification

配置

添加到您的Claude Code MCP配置文件中:

地点:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • 窗户: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

配置:

{
  "mcpServers": {
    "ntfy-notification": {
      "command": "npx",
      "args": ["-y", "ntfy-mcp-notification"],
      "env": {
        "NTFY_TOPIC": "claude-notif-a8f3c2d1",
        "NTFY_SERVER": "https://ntfy.sh",
        "NTFY_PRIORITY": "3"
      }
    }
  }
}

环境变量

变量必填默认描述
NTFY_TOPIC✅ 是-您唯一的ntfy.sh主题名称
NTFY_SERVER没有https://ntfy.shntfy.sh服务器URL(用于自托管)
NTFY_PRIORITY没有3默认优先级(1=低,5=紧急)

设置ntfy.sh

1.选择主题名称

选择一个独特的、难以猜测的主题名称:

# Good examples:
claude-notif-a8f3c2d1
my-claude-$(uuidgen | head -c 8)

# Bad examples (too easy to guess):
claude
notifications
myname-claude

⚠️ 安全说明:默认情况下,主题名称是公开的。任何知道你的主题的人都可以订阅或发送消息。使用唯一的随机主题名称。

2.订阅您的主题

在移动设备上:

  1. 安装ntfy应用程序(iOS / 安卓)
  2. 点击“+”添加订阅
  3. 输入您的主题名称(例如。, claude-notif-a8f3c2d1)
  4. 保存

在Web上:

  1. 访问 ntfy.sh
  2. 在输入框中输入您的主题名称
  3. 点击“订阅”
  4. 为页面添加书签,以便将来访问

在桌面上:

3.测试您的设置

发送测试通知:

curl -d "Test from ntfy.sh" ntfy.sh/your-topic-name

您应该在所有订阅的设备上收到通知。

用法

一旦在Claude Code中配置,这些工具就会自动可用。克劳德可以根据需要给他们打电话。

工具:send_notiation

发送基本通知以提醒用户。

参数:

  • message (必填):通知消息
  • title (可选):通知标题(默认:“Claude需要输入”)
  • priority (可选):优先级1-5(默认:来自配置)
  • tags (可选):标签数组(默认值: ["warning", "claude"])

例子:

{
  "message": "Found a potential security issue that needs your review",
  "title": "Security Review Required",
  "priority": 4,
  "tags": ["warning", "security", "claude"]
}

工具:请求_用户_确认

发送通知,请求用户确认某个操作。

参数:

  • action (必填):需要确认的操作说明
  • details (可选):附加上下文或详细信息
  • urgency (可选): "low", "normal",或 "high" (默认值: "normal")

例子:

{
  "action": "Delete 15 old log files from /tmp",
  "details": "Total size: 2.3 GB. Files older than 30 days.",
  "urgency": "normal"
}

工作流示例

用户: “请分析这个庞大的代码库,并在需要我对任何决策提供意见时告诉我”

克劳德:

  1. 开始分析代码库
  2. 遇到决策点(例如API设计选择)
  3. 呼叫 request_user_confirmation:
   {
     "action": "Choose API authentication method",
     "details": "Options: JWT tokens or OAuth 2.0",
     "urgency": "normal"
   }
  1. 您在手机上收到推送通知 📱
  2. 你打开克劳德并提供你的决定
  3. 克劳德继续你选择的方法

故障排除

“NTFY_TOPIC环境变量是必需的”

原因: NTFY_TOPIC 未在MCP配置中设置。

解决方案:添加 NTFY_TOPICenv Claude Code MCP配置的一部分。

未收到通知

可能的原因:

  1. 主题名称不匹配:确保MCP配置中的主题与您的订阅相匹配
  2. ntfy.sh服务器关闭:检查 ntfy.sh状态
  3. 网络问题:手动测试:
   curl -d "Test" https://ntfy.sh/your-topic-name

“发送失败:404”

原因:ntfy.sh服务器URL无效或主题包含无效字符。

解决方案:

  • 验证 NTFY_SERVER 正确(默认值: https://ntfy.sh)
  • 检查主题名称仅包含字母数字字符、破折号和下划线

服务器无法在Claude代码中启动

可能的原因:

  1. Node.js版本:确保已安装Node.js 18+:
   node --version
  1. MCP配置语法:验证配置文件中的JSON语法
  2. 检查日志:查找Claude Code的MCP服务器面板中的错误

安全与隐私

主题隐私

⚠️ 重要:ntfy.sh主题包括 默认情况下为公共。任何知道您的主题名称的人都可以订阅您的通知或发送到您的主题。

最佳实践:

  1. ✅ 使用独特、难以猜测的主题名称
  2. ✅ 避免在主题名称中包含个人信息
  3. ✅ 考虑在敏感环境中使用自托管ntfy.sh

发送到ntfy.sh的内容

发送: 通知标题、消息、优先级、标签和时间戳。

未发送: Claude对话历史、凭据、文件内容或任何未明确传递给通知工具的数据。

发展

本地设置

git clone https://github.com/mahmoud-bebars/ntfy-mcp-notification.git
cd ntfy-mcp-notification
npm install
npm run build

MCP检验员测试

export NTFY_TOPIC="test-topic-12345"
npm run inspector

建筑

npm run build    # Compile TypeScript
npm run watch    # Watch mode for development

贡献

欢迎投稿!请参阅 贡献.md 作为指导方针。

未来的增强功能

  • \[\]ntfy.sh身份验证支持(私有主题)
  • \[\]通知历史和日志记录
  • \[\]失败通知的重试逻辑
  • \[\]速率限制和重复数据删除
  • \[\]用于可点击操作按钮的Webhook服务器

许可证

MIT许可证-请参阅 许可证 详细信息文件

链接

致谢

______________________________________________________________________

由...制作❤️ Claude Code社区

目录标签

目录标签

开发工具JavaScriptClaude开源推送通知本地部署用户确认任务管理

支持客户端

Claude

接入字段

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

未说明

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

oauth

工具数量(toolCount,工具数)

2

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明oauth部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP