Ntfy MCP Server

Ntfy MCP Server

site icon
2025.04.03 3
TypeScript推送通知服务LLM 集成交流协作
ntfy-mcp-server 是一个基于 Model Context Protocol (MCP) 的服务,专门用于与 ntfy 推送通知服务交互。它使 LLM 和 AI 代理能够通过丰富的自定义选项向设备发送通知。
View on GitHub

Overview

基本能力

产品定位

ntfy-mcp-server 是一个 MCP 服务器,旨在标准化 LLM 与外部系统之间的通信,特别是与 ntfy 推送通知服务的集成。

核心功能

  • MCP 服务器实现:使用 @modelcontextprotocol/sdk 实现,便于与 LLM 代理集成。
  • Ntfy 集成:提供 send_ntfy 工具,支持多种通知功能,包括消息优先级、表情标签、可点击操作、文件附件、延迟交付和 Markdown 格式化。
  • 资源暴露:将配置的默认 ntfy 主题作为 MCP 资源暴露。
  • TypeScript:使用现代、类型安全的代码库。
  • 结构化日志:使用 winstonwinston-daily-rotate-file 进行详细和可旋转的日志记录。
  • 配置管理:使用 dotenv 进行基于环境的配置管理。
  • 实用脚本:包括清理构建工件和生成目录结构文档的脚本。
  • 错误处理与安全:实现健壮的错误处理、输入清理和安全过滤器。

适用场景

  1. 长时间运行任务通知:如数据库备份、代码生成或数据处理完成时通知。
  2. 计划提醒:设置未来事件或提醒的延迟通知。
  3. 警报系统:为监控系统或重要事件设置关键警报。
  4. 从 LLM 发送移动通知:允许 LLM 直接向手机发送通知。
  5. 多步骤流程更新:在复杂流程的不同阶段完成时接收更新。

工具列表

  • send_ntfy:通过 ntfy 服务发送通知消息,支持多种参数如主题、消息、标题、标签、优先级、点击操作、动作按钮、附件、电子邮件、延迟、缓存、Firebase 主题、唯一 ID、过期时间和 Markdown 格式化。

常见问题解答

  1. 如何配置默认 ntfy 主题?
  2. .env 文件中设置 NTFY_DEFAULT_TOPIC
  3. 如何安装 ntfy 应用?
  4. ntfy.sh 或应用商店安装。
  5. 如何调试服务器?
  6. 使用 npm run watch 实时监控日志文件。

使用教程

使用依赖

  • Node.js (v16+)
  • npm 或 yarn
  • MCP 兼容客户端(如 Claude Desktop、Cline 等)

安装教程

选项 1: NPM 包(推荐)

npm install -g ntfy-mcp-server

选项 2: 从源代码安装

git clone https://github.com/cyanheads/ntfy-mcp-server.git
cd ntfy-mcp-server
npm install
npm run build

调试方式

npm start
npm run watch

许可证

该项目遵循 Apache-2.0 开源许可条款,请参阅 Apache-2.0 了解完整条款。