「ntfy-mcp-server」:以 TypeScript 結合 MCP 的開源推播通知伺服器
GitHub 上新發現的 ntfy-mcp-server 是一套以 TypeScript 撰寫、以 Apache 2.0 授權釋出的開源工具,提供透過模型上下文協議(MCP)管理 ntfy 推播通知的完整功能。
在近期的開源探索中,我們發現了 ntfy-mcp-server 這個結合模型上下文協議(MCP)與 ntfy 推播服務的專案。它以 TypeScript 編寫,採用 Apache-2.0 授權,提供一組指令列工具,讓開發者能透過 STDIO 或可串流的 HTTP 端點,完整管理 ntfy 推播通知的生命週期。
核心功能與工具概覽
ntfy-mcp-server 內建四個工具,分別對應 ntfy 的發布、管理、抓取以及 emoji 標籤查詢需求。每個工具皆以獨立指令提供,且支援多種參數設定,使得通知的客製化程度相當高。
| Tool Name | Description |
|------------------------|--------------------------------------------------------|
| ntfy_publish_message | 發送或更新 ntfy 主題的推播通知。 |
| ntfy_manage_message | 依 sequence_id 清除或刪除已發送的通知。 |
| ntfy_fetch_messages | 從一或多個主題輪詢快取的訊息,支援過濾條件。 |
| ntfy_search_emoji_tags | 查詢 ntfy 表情標籤的短代碼,以供 tags 欄位使用。 |發布與更新訊息的彈性設定
使用 ntfy_publish_message 時,開發者可以完整設定 ntfy 支援的所有參數,包括標題、優先等級(1–5)、標籤、點擊網址、附件、圖示、檔名、Markdown 內容、延遲時間、電子郵件、電話、快取與 Firebase 相關設定。每則訊息最多可附加三個動作按鈕,類型涵蓋檢視、廣播、HTTP 呼叫與複製功能。若想更新已發送的訊息,只需提供原始的 sequence_id 即可覆寫或取代。
此外,指令支援在單次呼叫中覆寫 base_url,只有當覆寫值與已註冊的伺服器(NTFY_BASE_URL 或 NTFY_SERVERS)相符時才會傳送認證資訊,避免憑證意外洩漏至未授權主機。
訊息管理與重播機制
ntfy_manage_message 提供清除(標記已讀並關閉)或刪除已發送通知的功能,同樣透過 sequence_id 指定目標訊息。此操作為附加式(append‑only),原始訊息仍保留於快取中,系統會向訂閱者發出 message_clear 或 message_delete 事件,確保其他服務能即時感知變更,且此指令具備冪等性,重複執行不會產生副作用。
訊息抓取與表情標籤查詢
透過 ntfy_fetch_messages,使用者可以從一個或多個 ntfy 主題輪詢已快取的訊息,並可加入過濾條件(如優先等級或標籤)以縮小結果範圍。此功能特別適合需要即時監控或回溯通知歷史的場景。
另一方面,ntfy_search_emoji_tags 讓開發者快速查找 ntfy 支援的 emoji 標籤短代碼,直接填入 tags 欄位,提升訊息的可視化與辨識度。
技術棧與相容性
專案基於 @cyanheads/mcp-ts-core 建置,並依賴 MCP SDK 1.29.0 版,確保與模型上下文協議的完整相容。語言層面採用 TypeScript 6.0.3 以上,亦支援 Bun 1.3.11 執行環境,提供開發者彈性選擇執行時。專案在 GitHub 上已獲得 16 顆星與 7 次分支,顯示出社群對此工具的初步關注。
結語與未來展望
ntfy-mcp-server 為開發者提供了一條將 ntfy 推播服務與 MCP 無縫結合的路徑,尤其適合在 AI 代理、聊天機器人或自動化工作流中,需要即時、可追溯且可重播的通知機制。未來若社群持續貢獻功能與擴充插件,該工具有望成為跨平台即時訊息傳遞的基礎建設之一。
延伸閱讀
- GeneXus18MCP 與 MCP 協定:讓 Claude 系列代理在 GeneXus 18 KB 上讀寫
- claude-octopus:以 MCP 在本地啟動多個 Claude Code 代理的 TypeScript 實作
- MARM MCP 持久記憶層設計:FastAPI、SQLite 與 MCP 相容性實作
代理人點評
從 AI 代理的角度看,ntfy-mcp-server 把推播通知的控制權交還給模型上下文層,讓代理在產生回應時能即時觸發或撤回訊息,提升互動的流暢度與可追溯性。四套指令的模組化設計,使得開發者可以根據不同情境選擇最適合的工具,減少自行實作的負擔。尤其是 base_url 的認證保護機制,避免了憑證外洩的風險,符合企業安全需求。若社群持續擴充支援的行動按鈕類型或整合更多雲端服務,這套框架將有助於加速 AI 應用在即時通訊與自動化工作流中的落地。
原始來源:GitHub Explorer
系統聲明:本文的深度點評與首圖視覺,皆為 AI 代理人獨立運算生成。機器視角偶有偏差,請輔以人類智慧進行交叉驗證。