Notifyfan

io.github.CloudCorpRecords由 GitHub 帳號 CloudCorpRecords 發布v0.1.0更新於 Nov 3, 2026

Apprise 通知分發:健康檢查、狀態,以及帶標籤或一次性傳送。

AI 翻譯由 AI 模型根據下方的原文描述翻譯,可能有誤。

原文描述

Apprise notification fan-out: health, status, and tagged or one-off sends.

已驗證STDIO僅桌面

概覽

Notifyfan 的本機 MCP 服務;無需登入;STDIO。

暫無 AI 概覽:以下資訊來自註冊中心條目和服務本身。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Notifyfan,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

notifyfan

notifyfan sends notifications through an Apprise API server. A single tool, apprise, fans a message out to the destinations Apprise is configured with: send to one configured tag (or to every configured service), fire a one-off send at raw Apprise URL schemas, and check that the upstream server is alive — all through one action argument instead of a tool per operation. One binary serves a command-line interface and a stdio MCP server.

Configuration

Two environment variables configure the upstream connection:

  • APPRISE_URL — the Apprise API server base URL. Defaults to http://localhost:8000.
  • APPRISE_TOKEN — optional. When the upstream requires bearer auth, set it and notifyfan sends Authorization: Bearer <token> on every upstream call. It is read from the environment only: it is never a CLI flag and never an MCP tool argument.

The help action works with nothing configured at all.

Install

bash
npx @reneturcios/notifyfan health

Or run the container image:

bash
docker run -i ghcr.io/cloudcorprecords/notifyfan

The container defaults to the MCP server. Pass CLI arguments to use it as a CLI instead.

CLI

bash
notifyfan healthnotifyfan statusnotifyfan helpnotifyfan notify "Deployment succeeded" --tag ops --title "Deploy complete" --type successnotifyfan notify "Standup notes are posted"notifyfan notify-url "mailto://[email protected]" "Build finished" --type info
notifyfan --version

notify needs only a body; omit --tag to send to all configured services. notify-url takes the Apprise URLs first (one string; separate several URLs with commas) and then the body. Exit codes: 0 on success, 1 when a call fails (validation or upstream error), 2 for usage errors.

MCP server

bash
npx -y @reneturcios/notifyfan mcp

MCP client configuration:

json
{  "mcpServers": {    "notifyfan": {      "command": "npx",      "args": ["-y", "@reneturcios/notifyfan", "mcp"],      "env": {        "APPRISE_URL": "http://localhost:8000"      }    }  }}

Add APPRISE_TOKEN to the env block only when your Apprise API server requires it.

Tool

ToolInputWhat it does
appriseaction (string, required) plus the per-action parameters belowRuns the named action against the upstream Apprise API server.

Actions:

ActionRequiredOptionalWhat it does
health——Check Apprise API server health.
status——Return authenticated deployment and runtime status.
help——Return built-in markdown tool help. Makes no upstream call.
notifybodytag, title, typeSend to a configured Apprise tag, or to all configured services when tag is omitted.
notify_urlurls, bodytitle, typeSend a stateless one-off notification to one or more Apprise URL schemas. urls is a single string; separate multiple URLs with commas.

type is one of info (informational), success (successful operation), warning (non-critical warning), or failure (critical failure or error). Unknown actions, a missing body/urls, and an invalid type are errors raised before any upstream call.

Example call:

json
{  "name": "apprise",  "arguments": {    "action": "notify",    "body": "Deployment succeeded",    "tag": "ops",    "title": "Deploy complete",    "type": "success"  }}

Upstream mapping and known gaps

The action catalogue above is the documented surface. The upstream paths are documented reconstructions from the standard Apprise API: notify posts {body, tag?, title?, type?} to POST /notify, and notify_url posts {urls, body, title?, type?} to the same endpoint — the stateless form; the upstream API has no separate /notify_url route. health reads GET / (the upstream root) and status reads GET /details. Payload fields that were not supplied are omitted, never sent empty. Upstream failures surface the HTTP status plus the upstream message or error string when one is present, and a non-JSON success body is returned as raw text.

  • The original's HTTP transport, OAuth, and send_alert prompt are not reproduced; this rebuild is stdio-only.
  • No live Apprise API server was used while building: every upstream behaviour is verified against a fake fetch in the test suite.

Development

bash
npm installnpm run build   # tsc -> dist/npm test        # node test runner over test/*.test.ts, no network (fake fetch fixtures)npm run dev     # run the CLI from source via tsx

License

MIT — see LICENSE.

來源:README.md,提交 2f71c11

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.0最新Nov 3, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分