History of ntfy-mcp-server in namespace io.github
io.github.cyanheads/ntfy-mcp-server · Registry status: active
No name of its own reaches this register for this entry. The heading therefore carries the trailing segment of the identifier; the identifier itself is listed below as a coordinate.
Every published change to this entry, most recent first.
| 2026-10-08 | Declared version: 2.3.5 → 2.3.6 |
|---|---|
| 2026-10-08 | Last changed in the registry (raw): 2026-09-22 → 2026-10-07 |
| 2026-10-08 | First listed in the registry (raw): 2026-09-22 → 2026-10-07 |
| 2026-10-08 | Environment variable descriptions (raw): LOGS_DIR=Directory for file-based logs (Node only; ignored on Workers). · MCP_AUTH_MODE=Authentication mode to use: 'none', 'jwt', or 'oauth'. · MCP_HTTP_ENDPOINT_PATH=The endpoint path for the MCP server. · MCP_HTTP_HOST=The hostname for the HTTP server. · MCP_HTTP_PORT=The port to run the HTTP server on. · MCP_LOG_LEVEL=Sets the minimum log level for output (e.g., 'debug', 'info', 'warn'). · MCP_SESSION_MODE=HTTP session model: 'auto', 'stateful', or 'stateless'. This server requires 'stateful' over HTTP — the consent prompt on destructive and outbound calls is a multi-round-trip request that a 2025-era HTTP client can only complete over a live session — so an HTTP start with 'stateless' is refused. 'auto' resolves to 'stateful'; stdio ignores the setting. · NTFY_AUTH_PASSWORD=Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME. · NTFY_AUTH_TOKEN=Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD. · NTFY_AUTH_USERNAME=Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD. · NTFY_BASE_URL=Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset. · NTFY_BLOCK_PRIVATE_HOSTS=When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server. · NTFY_DEFAULT_TOPIC=Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe. · NTFY_MAX_RETRIES=Max retry attempts for transient upstream failures (5xx, network, 429). · NTFY_REQUEST_TIMEOUT_MS=Per-request HTTP timeout in milliseconds. · NTFY_SERVERS=JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand. · OTEL_ENABLED=Enable OpenTelemetry instrumentation (spans, metrics, completion logs). → LOGS_DIR=Directory for file-based logs (Node only; ignored on Workers). · MCP_AUTH_MODE=Authentication mode to use: 'none', 'jwt', or 'oauth'. · MCP_HTTP_ENDPOINT_PATH=The endpoint path for the MCP server. · MCP_HTTP_HOST=The hostname for the HTTP server. · MCP_HTTP_PORT=The port to run the HTTP server on. · MCP_LOG_LEVEL=Sets the minimum log level for output (e.g., 'debug', 'info', 'warn'). · MCP_REQUEST_STATE_KEY=Recommended for HTTP. Key (>= 32 bytes, the same on every instance) that seals the requestState carrying the consent-record id of a confirmation prompt, bound to the caller for 900 s; a forged, tampered, or expired state is rejected before the handler runs. · MCP_SESSION_MODE=HTTP session model: 'auto', 'stateful', or 'stateless'. This server requires 'stateful' over HTTP — the consent prompt on destructive and outbound calls is a multi-round-trip request that a 2025-era HTTP client can only complete over a live session — so an HTTP start with 'stateless' is refused. 'auto' resolves to 'stateful'; stdio ignores the setting. · MCP_TRANSPORT_TYPE=Selects the HTTP transport. · NTFY_AUTH_PASSWORD=Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME. · NTFY_AUTH_TOKEN=Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD. · NTFY_AUTH_USERNAME=Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD. · NTFY_BASE_URL=Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset. · NTFY_BLOCK_PRIVATE_HOSTS=When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server. · NTFY_DEFAULT_TOPIC=Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe. · NTFY_MAX_RETRIES=Max retry attempts for transient upstream failures (5xx, network, 429). · NTFY_REQUEST_TIMEOUT_MS=Per-request HTTP timeout in milliseconds. · NTFY_SERVERS=JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand. · OTEL_ENABLED=Enable OpenTelemetry instrumentation (spans, metrics, completion logs). |
| 2026-10-08 | Connection paths (source structure): {"packages":[{"registryType":"npm","identifier":"ntfy-mcp-server","version":"2.3.5","runtimeHint":"bun","transport":"stdio","environment":[{"name":"NTFY_SERVERS","description":"JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand.","format":"string","required":false,"secret":false},{"name":"NTFY_BASE_URL","description":"Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset.","format":"string","required":false,"secret":false},{"name":"NTFY_DEFAULT_TOPIC","description":"Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_TOKEN","description":"Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_USERNAME","description":"Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_PASSWORD","description":"Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME.","format":"string","required":false,"secret":false},{"name":"NTFY_REQUEST_TIMEOUT_MS","description":"Per-request HTTP timeout in milliseconds.","format":"string","required":false,"secret":false},{"name":"NTFY_MAX_RETRIES","description":"Max retry attempts for transient upstream failures (5xx, network, 429).","format":"string","required":false,"secret":false},{"name":"NTFY_BLOCK_PRIVATE_HOSTS","description":"When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false},{"name":"LOGS_DIR","description":"Directory for file-based logs (Node only; ignored on Workers).","format":"string","required":false,"secret":false},{"name":"OTEL_ENABLED","description":"Enable OpenTelemetry instrumentation (spans, metrics, completion logs).","format":"string","required":false,"secret":false}],"additional_arguments_declared":true},{"registryType":"npm","identifier":"ntfy-mcp-server","version":"2.3.5","runtimeHint":"bun","transport":"streamable-http","environment":[{"name":"NTFY_SERVERS","description":"JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand.","format":"string","required":false,"secret":false},{"name":"NTFY_BASE_URL","description":"Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset.","format":"string","required":false,"secret":false},{"name":"NTFY_DEFAULT_TOPIC","description":"Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_TOKEN","description":"Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_USERNAME","description":"Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_PASSWORD","description":"Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME.","format":"string","required":false,"secret":false},{"name":"NTFY_REQUEST_TIMEOUT_MS","description":"Per-request HTTP timeout in milliseconds.","format":"string","required":false,"secret":false},{"name":"NTFY_MAX_RETRIES","description":"Max retry attempts for transient upstream failures (5xx, network, 429).","format":"string","required":false,"secret":false},{"name":"NTFY_BLOCK_PRIVATE_HOSTS","description":"When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server.","format":"string","required":false,"secret":false},{"name":"MCP_SESSION_MODE","description":"HTTP session model: 'auto', 'stateful', or 'stateless'. This server requires 'stateful' over HTTP — the consent prompt on destructive and outbound calls is a multi-round-trip request that a 2025-era HTTP client can only complete over a live session — so an HTTP start with 'stateless' is refused. 'auto' resolves to 'stateful'; stdio ignores the setting.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_HOST","description":"The hostname for the HTTP server.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_PORT","description":"The port to run the HTTP server on.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_ENDPOINT_PATH","description":"The endpoint path for the MCP server.","format":"string","required":false,"secret":false},{"name":"MCP_AUTH_MODE","description":"Authentication mode to use: 'none', 'jwt', or 'oauth'.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false},{"name":"LOGS_DIR","description":"Directory for file-based logs (Node only; ignored on Workers).","format":"string","required":false,"secret":false},{"name":"OTEL_ENABLED","description":"Enable OpenTelemetry instrumentation (spans, metrics, completion logs).","format":"string","required":false,"secret":false}],"additional_arguments_declared":true}],"remotes":[]} → {"packages":[{"registryType":"npm","identifier":"ntfy-mcp-server","version":"2.3.6","runtimeHint":"npx","transport":"stdio","environment":[{"name":"NTFY_SERVERS","description":"JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand.","format":"string","required":false,"secret":false},{"name":"NTFY_BASE_URL","description":"Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset.","format":"string","required":false,"secret":false},{"name":"NTFY_DEFAULT_TOPIC","description":"Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_TOKEN","description":"Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_USERNAME","description":"Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_PASSWORD","description":"Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME.","format":"string","required":false,"secret":false},{"name":"NTFY_REQUEST_TIMEOUT_MS","description":"Per-request HTTP timeout in milliseconds.","format":"string","required":false,"secret":false},{"name":"NTFY_MAX_RETRIES","description":"Max retry attempts for transient upstream failures (5xx, network, 429).","format":"string","required":false,"secret":false},{"name":"NTFY_BLOCK_PRIVATE_HOSTS","description":"When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false},{"name":"LOGS_DIR","description":"Directory for file-based logs (Node only; ignored on Workers).","format":"string","required":false,"secret":false},{"name":"OTEL_ENABLED","description":"Enable OpenTelemetry instrumentation (spans, metrics, completion logs).","format":"string","required":false,"secret":false}],"additional_arguments_declared":false},{"registryType":"npm","identifier":"ntfy-mcp-server","version":"2.3.6","runtimeHint":"npx","transport":"streamable-http","environment":[{"name":"MCP_TRANSPORT_TYPE","description":"Selects the HTTP transport.","format":"string","required":false,"secret":false},{"name":"NTFY_SERVERS","description":"JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand.","format":"string","required":false,"secret":false},{"name":"NTFY_BASE_URL","description":"Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset.","format":"string","required":false,"secret":false},{"name":"NTFY_DEFAULT_TOPIC","description":"Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_TOKEN","description":"Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_USERNAME","description":"Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_PASSWORD","description":"Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME.","format":"string","required":false,"secret":false},{"name":"NTFY_REQUEST_TIMEOUT_MS","description":"Per-request HTTP timeout in milliseconds.","format":"string","required":false,"secret":false},{"name":"NTFY_MAX_RETRIES","description":"Max retry attempts for transient upstream failures (5xx, network, 429).","format":"string","required":false,"secret":false},{"name":"NTFY_BLOCK_PRIVATE_HOSTS","description":"When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server.","format":"string","required":false,"secret":false},{"name":"MCP_SESSION_MODE","description":"HTTP session model: 'auto', 'stateful', or 'stateless'. This server requires 'stateful' over HTTP — the consent prompt on destructive and outbound calls is a multi-round-trip request that a 2025-era HTTP client can only complete over a live session — so an HTTP start with 'stateless' is refused. 'auto' resolves to 'stateful'; stdio ignores the setting.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_HOST","description":"The hostname for the HTTP server.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_PORT","description":"The port to run the HTTP server on.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_ENDPOINT_PATH","description":"The endpoint path for the MCP server.","format":"string","required":false,"secret":false},{"name":"MCP_AUTH_MODE","description":"Authentication mode to use: 'none', 'jwt', or 'oauth'.","format":"string","required":false,"secret":false},{"name":"MCP_REQUEST_STATE_KEY","description":"Recommended for HTTP. Key (>= 32 bytes, the same on every instance) that seals the requestState carrying the consent-record id of a confirmation prompt, bound to the caller for 900 s; a forged, tampered, or expired state is rejected before the handler runs.","format":"string","required":false,"secret":true},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false},{"name":"LOGS_DIR","description":"Directory for file-based logs (Node only; ignored on Workers).","format":"string","required":false,"secret":false},{"name":"OTEL_ENABLED","description":"Enable OpenTelemetry instrumentation (spans, metrics, completion logs).","format":"string","required":false,"secret":false}],"additional_arguments_declared":false}],"remotes":[]} |
| 2026-10-08 | Runtime hints (raw): bun → npx |
| 2026-10-08 | Package versions (raw): 2.3.5 → 2.3.6 |
| 2026-10-08 | Environment variables (raw): NTFY_SERVERS, NTFY_BASE_URL, NTFY_DEFAULT_TOPIC, NTFY_AUTH_TOKEN, NTFY_AUTH_USERNAME, NTFY_AUTH_PASSWORD, NTFY_REQUEST_TIMEOUT_MS, NTFY_MAX_RETRIES, NTFY_BLOCK_PRIVATE_HOSTS, MCP_LOG_LEVEL, LOGS_DIR, OTEL_ENABLED, NTFY_SERVERS, NTFY_BASE_URL, NTFY_DEFAULT_TOPIC, NTFY_AUTH_TOKEN, NTFY_AUTH_USERNAME, NTFY_AUTH_PASSWORD, NTFY_REQUEST_TIMEOUT_MS, NTFY_MAX_RETRIES, NTFY_BLOCK_PRIVATE_HOSTS, MCP_SESSION_MODE, MCP_HTTP_HOST, MCP_HTTP_PORT, MCP_HTTP_ENDPOINT_PATH, MCP_AUTH_MODE, MCP_LOG_LEVEL, LOGS_DIR, OTEL_ENABLED → NTFY_SERVERS, NTFY_BASE_URL, NTFY_DEFAULT_TOPIC, NTFY_AUTH_TOKEN, NTFY_AUTH_USERNAME, NTFY_AUTH_PASSWORD, NTFY_REQUEST_TIMEOUT_MS, NTFY_MAX_RETRIES, NTFY_BLOCK_PRIVATE_HOSTS, MCP_LOG_LEVEL, LOGS_DIR, OTEL_ENABLED, MCP_TRANSPORT_TYPE, NTFY_SERVERS, NTFY_BASE_URL, NTFY_DEFAULT_TOPIC, NTFY_AUTH_TOKEN, NTFY_AUTH_USERNAME, NTFY_AUTH_PASSWORD, NTFY_REQUEST_TIMEOUT_MS, NTFY_MAX_RETRIES, NTFY_BLOCK_PRIVATE_HOSTS, MCP_SESSION_MODE, MCP_HTTP_HOST, MCP_HTTP_PORT, MCP_HTTP_ENDPOINT_PATH, MCP_AUTH_MODE, MCP_REQUEST_STATE_KEY, MCP_LOG_LEVEL, LOGS_DIR, OTEL_ENABLED |
| 2026-09-23 | Declared version: 2.3.4 → 2.3.5 |
| 2026-09-23 | Last changed in the registry (raw): 2026-09-16 → 2026-09-22 |
| 2026-09-23 | First listed in the registry (raw): 2026-09-16 → 2026-09-22 |
| 2026-09-23 | Connection paths (source structure): {"packages":[{"registryType":"npm","identifier":"ntfy-mcp-server","version":"2.3.4","runtimeHint":"bun","transport":"stdio","environment":[{"name":"NTFY_SERVERS","description":"JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand.","format":"string","required":false,"secret":false},{"name":"NTFY_BASE_URL","description":"Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset.","format":"string","required":false,"secret":false},{"name":"NTFY_DEFAULT_TOPIC","description":"Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_TOKEN","description":"Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_USERNAME","description":"Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_PASSWORD","description":"Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME.","format":"string","required":false,"secret":false},{"name":"NTFY_REQUEST_TIMEOUT_MS","description":"Per-request HTTP timeout in milliseconds.","format":"string","required":false,"secret":false},{"name":"NTFY_MAX_RETRIES","description":"Max retry attempts for transient upstream failures (5xx, network, 429).","format":"string","required":false,"secret":false},{"name":"NTFY_BLOCK_PRIVATE_HOSTS","description":"When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false},{"name":"LOGS_DIR","description":"Directory for file-based logs (Node only; ignored on Workers).","format":"string","required":false,"secret":false},{"name":"OTEL_ENABLED","description":"Enable OpenTelemetry instrumentation (spans, metrics, completion logs).","format":"string","required":false,"secret":false}],"additional_arguments_declared":true},{"registryType":"npm","identifier":"ntfy-mcp-server","version":"2.3.4","runtimeHint":"bun","transport":"streamable-http","environment":[{"name":"NTFY_SERVERS","description":"JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand.","format":"string","required":false,"secret":false},{"name":"NTFY_BASE_URL","description":"Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset.","format":"string","required":false,"secret":false},{"name":"NTFY_DEFAULT_TOPIC","description":"Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_TOKEN","description":"Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_USERNAME","description":"Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_PASSWORD","description":"Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME.","format":"string","required":false,"secret":false},{"name":"NTFY_REQUEST_TIMEOUT_MS","description":"Per-request HTTP timeout in milliseconds.","format":"string","required":false,"secret":false},{"name":"NTFY_MAX_RETRIES","description":"Max retry attempts for transient upstream failures (5xx, network, 429).","format":"string","required":false,"secret":false},{"name":"NTFY_BLOCK_PRIVATE_HOSTS","description":"When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server.","format":"string","required":false,"secret":false},{"name":"MCP_SESSION_MODE","description":"HTTP session model: 'auto', 'stateful', or 'stateless'. This server requires 'stateful' over HTTP — the consent prompt on destructive and outbound calls is a multi-round-trip request that a 2025-era HTTP client can only complete over a live session — so an HTTP start with 'stateless' is refused. 'auto' resolves to 'stateful'; stdio ignores the setting.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_HOST","description":"The hostname for the HTTP server.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_PORT","description":"The port to run the HTTP server on.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_ENDPOINT_PATH","description":"The endpoint path for the MCP server.","format":"string","required":false,"secret":false},{"name":"MCP_AUTH_MODE","description":"Authentication mode to use: 'none', 'jwt', or 'oauth'.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false},{"name":"LOGS_DIR","description":"Directory for file-based logs (Node only; ignored on Workers).","format":"string","required":false,"secret":false},{"name":"OTEL_ENABLED","description":"Enable OpenTelemetry instrumentation (spans, metrics, completion logs).","format":"string","required":false,"secret":false}],"additional_arguments_declared":true}],"remotes":[]} → {"packages":[{"registryType":"npm","identifier":"ntfy-mcp-server","version":"2.3.5","runtimeHint":"bun","transport":"stdio","environment":[{"name":"NTFY_SERVERS","description":"JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand.","format":"string","required":false,"secret":false},{"name":"NTFY_BASE_URL","description":"Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset.","format":"string","required":false,"secret":false},{"name":"NTFY_DEFAULT_TOPIC","description":"Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_TOKEN","description":"Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_USERNAME","description":"Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_PASSWORD","description":"Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME.","format":"string","required":false,"secret":false},{"name":"NTFY_REQUEST_TIMEOUT_MS","description":"Per-request HTTP timeout in milliseconds.","format":"string","required":false,"secret":false},{"name":"NTFY_MAX_RETRIES","description":"Max retry attempts for transient upstream failures (5xx, network, 429).","format":"string","required":false,"secret":false},{"name":"NTFY_BLOCK_PRIVATE_HOSTS","description":"When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false},{"name":"LOGS_DIR","description":"Directory for file-based logs (Node only; ignored on Workers).","format":"string","required":false,"secret":false},{"name":"OTEL_ENABLED","description":"Enable OpenTelemetry instrumentation (spans, metrics, completion logs).","format":"string","required":false,"secret":false}],"additional_arguments_declared":true},{"registryType":"npm","identifier":"ntfy-mcp-server","version":"2.3.5","runtimeHint":"bun","transport":"streamable-http","environment":[{"name":"NTFY_SERVERS","description":"JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand.","format":"string","required":false,"secret":false},{"name":"NTFY_BASE_URL","description":"Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset.","format":"string","required":false,"secret":false},{"name":"NTFY_DEFAULT_TOPIC","description":"Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_TOKEN","description":"Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_USERNAME","description":"Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_PASSWORD","description":"Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME.","format":"string","required":false,"secret":false},{"name":"NTFY_REQUEST_TIMEOUT_MS","description":"Per-request HTTP timeout in milliseconds.","format":"string","required":false,"secret":false},{"name":"NTFY_MAX_RETRIES","description":"Max retry attempts for transient upstream failures (5xx, network, 429).","format":"string","required":false,"secret":false},{"name":"NTFY_BLOCK_PRIVATE_HOSTS","description":"When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server.","format":"string","required":false,"secret":false},{"name":"MCP_SESSION_MODE","description":"HTTP session model: 'auto', 'stateful', or 'stateless'. This server requires 'stateful' over HTTP — the consent prompt on destructive and outbound calls is a multi-round-trip request that a 2025-era HTTP client can only complete over a live session — so an HTTP start with 'stateless' is refused. 'auto' resolves to 'stateful'; stdio ignores the setting.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_HOST","description":"The hostname for the HTTP server.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_PORT","description":"The port to run the HTTP server on.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_ENDPOINT_PATH","description":"The endpoint path for the MCP server.","format":"string","required":false,"secret":false},{"name":"MCP_AUTH_MODE","description":"Authentication mode to use: 'none', 'jwt', or 'oauth'.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false},{"name":"LOGS_DIR","description":"Directory for file-based logs (Node only; ignored on Workers).","format":"string","required":false,"secret":false},{"name":"OTEL_ENABLED","description":"Enable OpenTelemetry instrumentation (spans, metrics, completion logs).","format":"string","required":false,"secret":false}],"additional_arguments_declared":true}],"remotes":[]} |
| 2026-09-23 | Package versions (raw): 2.3.4 → 2.3.5 |
| 2026-09-17 | Declared version: 2.3.3 → 2.3.4 |
| 2026-09-17 | Last changed in the registry (raw): 2026-09-04 → 2026-09-16 |
| 2026-09-17 | First listed in the registry (raw): 2026-09-04 → 2026-09-16 |
| 2026-09-17 | Environment variable descriptions (raw): LOGS_DIR=Directory for file-based logs (Node only; ignored on Workers). · MCP_AUTH_MODE=Authentication mode to use: 'none', 'jwt', or 'oauth'. · MCP_HTTP_ENDPOINT_PATH=The endpoint path for the MCP server. · MCP_HTTP_HOST=The hostname for the HTTP server. · MCP_HTTP_PORT=The port to run the HTTP server on. · MCP_LOG_LEVEL=Sets the minimum log level for output (e.g., 'debug', 'info', 'warn'). · MCP_SESSION_MODE=HTTP session model: 'auto', 'stateful', or 'stateless'. 'auto' resolves to 'stateful'. Keep it stateful — the consent prompt on destructive and outbound calls is a multi-round-trip request that a 2025-era HTTP client can only complete over a live session. · NTFY_AUTH_PASSWORD=Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME. · NTFY_AUTH_TOKEN=Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD. · NTFY_AUTH_USERNAME=Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD. · NTFY_BASE_URL=Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset. · NTFY_BLOCK_PRIVATE_HOSTS=When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server. · NTFY_DEFAULT_TOPIC=Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe. · NTFY_MAX_RETRIES=Max retry attempts for transient upstream failures (5xx, network, 429). · NTFY_REQUEST_TIMEOUT_MS=Per-request HTTP timeout in milliseconds. · NTFY_SERVERS=JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand. · OTEL_ENABLED=Enable OpenTelemetry instrumentation (spans, metrics, completion logs). → LOGS_DIR=Directory for file-based logs (Node only; ignored on Workers). · MCP_AUTH_MODE=Authentication mode to use: 'none', 'jwt', or 'oauth'. · MCP_HTTP_ENDPOINT_PATH=The endpoint path for the MCP server. · MCP_HTTP_HOST=The hostname for the HTTP server. · MCP_HTTP_PORT=The port to run the HTTP server on. · MCP_LOG_LEVEL=Sets the minimum log level for output (e.g., 'debug', 'info', 'warn'). · MCP_SESSION_MODE=HTTP session model: 'auto', 'stateful', or 'stateless'. This server requires 'stateful' over HTTP — the consent prompt on destructive and outbound calls is a multi-round-trip request that a 2025-era HTTP client can only complete over a live session — so an HTTP start with 'stateless' is refused. 'auto' resolves to 'stateful'; stdio ignores the setting. · NTFY_AUTH_PASSWORD=Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME. · NTFY_AUTH_TOKEN=Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD. · NTFY_AUTH_USERNAME=Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD. · NTFY_BASE_URL=Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset. · NTFY_BLOCK_PRIVATE_HOSTS=When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server. · NTFY_DEFAULT_TOPIC=Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe. · NTFY_MAX_RETRIES=Max retry attempts for transient upstream failures (5xx, network, 429). · NTFY_REQUEST_TIMEOUT_MS=Per-request HTTP timeout in milliseconds. · NTFY_SERVERS=JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand. · OTEL_ENABLED=Enable OpenTelemetry instrumentation (spans, metrics, completion logs). |
| 2026-09-17 | Connection paths (source structure): {"packages":[{"registryType":"npm","identifier":"ntfy-mcp-server","version":"2.3.3","runtimeHint":"bun","transport":"stdio","environment":[{"name":"NTFY_SERVERS","description":"JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand.","format":"string","required":false,"secret":false},{"name":"NTFY_BASE_URL","description":"Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset.","format":"string","required":false,"secret":false},{"name":"NTFY_DEFAULT_TOPIC","description":"Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_TOKEN","description":"Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_USERNAME","description":"Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_PASSWORD","description":"Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME.","format":"string","required":false,"secret":false},{"name":"NTFY_REQUEST_TIMEOUT_MS","description":"Per-request HTTP timeout in milliseconds.","format":"string","required":false,"secret":false},{"name":"NTFY_MAX_RETRIES","description":"Max retry attempts for transient upstream failures (5xx, network, 429).","format":"string","required":false,"secret":false},{"name":"NTFY_BLOCK_PRIVATE_HOSTS","description":"When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false},{"name":"LOGS_DIR","description":"Directory for file-based logs (Node only; ignored on Workers).","format":"string","required":false,"secret":false},{"name":"OTEL_ENABLED","description":"Enable OpenTelemetry instrumentation (spans, metrics, completion logs).","format":"string","required":false,"secret":false}],"additional_arguments_declared":true},{"registryType":"npm","identifier":"ntfy-mcp-server","version":"2.3.3","runtimeHint":"bun","transport":"streamable-http","environment":[{"name":"NTFY_SERVERS","description":"JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand.","format":"string","required":false,"secret":false},{"name":"NTFY_BASE_URL","description":"Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset.","format":"string","required":false,"secret":false},{"name":"NTFY_DEFAULT_TOPIC","description":"Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_TOKEN","description":"Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_USERNAME","description":"Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_PASSWORD","description":"Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME.","format":"string","required":false,"secret":false},{"name":"NTFY_REQUEST_TIMEOUT_MS","description":"Per-request HTTP timeout in milliseconds.","format":"string","required":false,"secret":false},{"name":"NTFY_MAX_RETRIES","description":"Max retry attempts for transient upstream failures (5xx, network, 429).","format":"string","required":false,"secret":false},{"name":"NTFY_BLOCK_PRIVATE_HOSTS","description":"When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server.","format":"string","required":false,"secret":false},{"name":"MCP_SESSION_MODE","description":"HTTP session model: 'auto', 'stateful', or 'stateless'. 'auto' resolves to 'stateful'. Keep it stateful — the consent prompt on destructive and outbound calls is a multi-round-trip request that a 2025-era HTTP client can only complete over a live session.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_HOST","description":"The hostname for the HTTP server.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_PORT","description":"The port to run the HTTP server on.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_ENDPOINT_PATH","description":"The endpoint path for the MCP server.","format":"string","required":false,"secret":false},{"name":"MCP_AUTH_MODE","description":"Authentication mode to use: 'none', 'jwt', or 'oauth'.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false},{"name":"LOGS_DIR","description":"Directory for file-based logs (Node only; ignored on Workers).","format":"string","required":false,"secret":false},{"name":"OTEL_ENABLED","description":"Enable OpenTelemetry instrumentation (spans, metrics, completion logs).","format":"string","required":false,"secret":false}],"additional_arguments_declared":true}],"remotes":[]} → {"packages":[{"registryType":"npm","identifier":"ntfy-mcp-server","version":"2.3.4","runtimeHint":"bun","transport":"stdio","environment":[{"name":"NTFY_SERVERS","description":"JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand.","format":"string","required":false,"secret":false},{"name":"NTFY_BASE_URL","description":"Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset.","format":"string","required":false,"secret":false},{"name":"NTFY_DEFAULT_TOPIC","description":"Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_TOKEN","description":"Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_USERNAME","description":"Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_PASSWORD","description":"Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME.","format":"string","required":false,"secret":false},{"name":"NTFY_REQUEST_TIMEOUT_MS","description":"Per-request HTTP timeout in milliseconds.","format":"string","required":false,"secret":false},{"name":"NTFY_MAX_RETRIES","description":"Max retry attempts for transient upstream failures (5xx, network, 429).","format":"string","required":false,"secret":false},{"name":"NTFY_BLOCK_PRIVATE_HOSTS","description":"When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false},{"name":"LOGS_DIR","description":"Directory for file-based logs (Node only; ignored on Workers).","format":"string","required":false,"secret":false},{"name":"OTEL_ENABLED","description":"Enable OpenTelemetry instrumentation (spans, metrics, completion logs).","format":"string","required":false,"secret":false}],"additional_arguments_declared":true},{"registryType":"npm","identifier":"ntfy-mcp-server","version":"2.3.4","runtimeHint":"bun","transport":"streamable-http","environment":[{"name":"NTFY_SERVERS","description":"JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand.","format":"string","required":false,"secret":false},{"name":"NTFY_BASE_URL","description":"Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset.","format":"string","required":false,"secret":false},{"name":"NTFY_DEFAULT_TOPIC","description":"Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_TOKEN","description":"Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_USERNAME","description":"Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_PASSWORD","description":"Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME.","format":"string","required":false,"secret":false},{"name":"NTFY_REQUEST_TIMEOUT_MS","description":"Per-request HTTP timeout in milliseconds.","format":"string","required":false,"secret":false},{"name":"NTFY_MAX_RETRIES","description":"Max retry attempts for transient upstream failures (5xx, network, 429).","format":"string","required":false,"secret":false},{"name":"NTFY_BLOCK_PRIVATE_HOSTS","description":"When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server.","format":"string","required":false,"secret":false},{"name":"MCP_SESSION_MODE","description":"HTTP session model: 'auto', 'stateful', or 'stateless'. This server requires 'stateful' over HTTP — the consent prompt on destructive and outbound calls is a multi-round-trip request that a 2025-era HTTP client can only complete over a live session — so an HTTP start with 'stateless' is refused. 'auto' resolves to 'stateful'; stdio ignores the setting.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_HOST","description":"The hostname for the HTTP server.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_PORT","description":"The port to run the HTTP server on.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_ENDPOINT_PATH","description":"The endpoint path for the MCP server.","format":"string","required":false,"secret":false},{"name":"MCP_AUTH_MODE","description":"Authentication mode to use: 'none', 'jwt', or 'oauth'.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false},{"name":"LOGS_DIR","description":"Directory for file-based logs (Node only; ignored on Workers).","format":"string","required":false,"secret":false},{"name":"OTEL_ENABLED","description":"Enable OpenTelemetry instrumentation (spans, metrics, completion logs).","format":"string","required":false,"secret":false}],"additional_arguments_declared":true}],"remotes":[]} |
| 2026-09-17 | Package versions (raw): 2.3.3 → 2.3.4 |
| 2026-09-08 | Connection paths (source structure): – → {"packages":[{"registryType":"npm","identifier":"ntfy-mcp-server","version":"2.3.3","runtimeHint":"bun","transport":"stdio","environment":[{"name":"NTFY_SERVERS","description":"JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand.","format":"string","required":false,"secret":false},{"name":"NTFY_BASE_URL","description":"Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset.","format":"string","required":false,"secret":false},{"name":"NTFY_DEFAULT_TOPIC","description":"Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_TOKEN","description":"Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_USERNAME","description":"Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_PASSWORD","description":"Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME.","format":"string","required":false,"secret":false},{"name":"NTFY_REQUEST_TIMEOUT_MS","description":"Per-request HTTP timeout in milliseconds.","format":"string","required":false,"secret":false},{"name":"NTFY_MAX_RETRIES","description":"Max retry attempts for transient upstream failures (5xx, network, 429).","format":"string","required":false,"secret":false},{"name":"NTFY_BLOCK_PRIVATE_HOSTS","description":"When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false},{"name":"LOGS_DIR","description":"Directory for file-based logs (Node only; ignored on Workers).","format":"string","required":false,"secret":false},{"name":"OTEL_ENABLED","description":"Enable OpenTelemetry instrumentation (spans, metrics, completion logs).","format":"string","required":false,"secret":false}],"additional_arguments_declared":true},{"registryType":"npm","identifier":"ntfy-mcp-server","version":"2.3.3","runtimeHint":"bun","transport":"streamable-http","environment":[{"name":"NTFY_SERVERS","description":"JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand.","format":"string","required":false,"secret":false},{"name":"NTFY_BASE_URL","description":"Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset.","format":"string","required":false,"secret":false},{"name":"NTFY_DEFAULT_TOPIC","description":"Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_TOKEN","description":"Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_USERNAME","description":"Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD.","format":"string","required":false,"secret":false},{"name":"NTFY_AUTH_PASSWORD","description":"Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME.","format":"string","required":false,"secret":false},{"name":"NTFY_REQUEST_TIMEOUT_MS","description":"Per-request HTTP timeout in milliseconds.","format":"string","required":false,"secret":false},{"name":"NTFY_MAX_RETRIES","description":"Max retry attempts for transient upstream failures (5xx, network, 429).","format":"string","required":false,"secret":false},{"name":"NTFY_BLOCK_PRIVATE_HOSTS","description":"When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server.","format":"string","required":false,"secret":false},{"name":"MCP_SESSION_MODE","description":"HTTP session model: 'auto', 'stateful', or 'stateless'. 'auto' resolves to 'stateful'. Keep it stateful — the consent prompt on destructive and outbound calls is a multi-round-trip request that a 2025-era HTTP client can only complete over a live session.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_HOST","description":"The hostname for the HTTP server.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_PORT","description":"The port to run the HTTP server on.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_ENDPOINT_PATH","description":"The endpoint path for the MCP server.","format":"string","required":false,"secret":false},{"name":"MCP_AUTH_MODE","description":"Authentication mode to use: 'none', 'jwt', or 'oauth'.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false},{"name":"LOGS_DIR","description":"Directory for file-based logs (Node only; ignored on Workers).","format":"string","required":false,"secret":false},{"name":"OTEL_ENABLED","description":"Enable OpenTelemetry instrumentation (spans, metrics, completion logs).","format":"string","required":false,"secret":false}],"additional_arguments_declared":true}],"remotes":[]} |
| 2026-09-05 | Declared version: 2.3.2 → 2.3.3 |
| 2026-09-05 | Last changed in the registry (raw): 2026-08-22 → 2026-09-04 |
| 2026-09-05 | First listed in the registry (raw): 2026-08-22 → 2026-09-04 |
| 2026-09-05 | Package versions (raw): 2.3.2 → 2.3.3 |
| 2026-08-26 | Description (raw): – → Send, manage, and replay ntfy push notifications via MCP. |
| 2026-08-23 | Declared version: 2.3.0 → 2.3.2 |
| 2026-08-23 | Last changed in the registry (raw): 2026-07-30 → 2026-08-22 |
| 2026-08-23 | First listed in the registry (raw): 2026-07-30 → 2026-08-22 |
| 2026-08-23 | Environment variable descriptions (raw): LOGS_DIR=Directory for file-based logs (Node only; ignored on Workers). · MCP_AUTH_MODE=Authentication mode to use: 'none', 'jwt', or 'oauth'. · MCP_HTTP_ENDPOINT_PATH=The endpoint path for the MCP server. · MCP_HTTP_HOST=The hostname for the HTTP server. · MCP_HTTP_PORT=The port to run the HTTP server on. · MCP_LOG_LEVEL=Sets the minimum log level for output (e.g., 'debug', 'info', 'warn'). · MCP_SESSION_MODE=HTTP session model: 'stateless', 'stateful', or 'auto'. · NTFY_AUTH_PASSWORD=Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME. · NTFY_AUTH_TOKEN=Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD. · NTFY_AUTH_USERNAME=Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD. · NTFY_BASE_URL=Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset. · NTFY_BLOCK_PRIVATE_HOSTS=When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server. · NTFY_DEFAULT_TOPIC=Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe. · NTFY_MAX_RETRIES=Max retry attempts for transient upstream failures (5xx, network, 429). · NTFY_REQUEST_TIMEOUT_MS=Per-request HTTP timeout in milliseconds. · NTFY_SERVERS=JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand. · OTEL_ENABLED=Enable OpenTelemetry instrumentation (spans, metrics, completion logs). → LOGS_DIR=Directory for file-based logs (Node only; ignored on Workers). · MCP_AUTH_MODE=Authentication mode to use: 'none', 'jwt', or 'oauth'. · MCP_HTTP_ENDPOINT_PATH=The endpoint path for the MCP server. · MCP_HTTP_HOST=The hostname for the HTTP server. · MCP_HTTP_PORT=The port to run the HTTP server on. · MCP_LOG_LEVEL=Sets the minimum log level for output (e.g., 'debug', 'info', 'warn'). · MCP_SESSION_MODE=HTTP session model: 'auto', 'stateful', or 'stateless'. 'auto' resolves to 'stateful'. Keep it stateful — the consent prompt on destructive and outbound calls is a multi-round-trip request that a 2025-era HTTP client can only complete over a live session. · NTFY_AUTH_PASSWORD=Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME. · NTFY_AUTH_TOKEN=Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD. · NTFY_AUTH_USERNAME=Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD. · NTFY_BASE_URL=Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset. · NTFY_BLOCK_PRIVATE_HOSTS=When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server. · NTFY_DEFAULT_TOPIC=Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe. · NTFY_MAX_RETRIES=Max retry attempts for transient upstream failures (5xx, network, 429). · NTFY_REQUEST_TIMEOUT_MS=Per-request HTTP timeout in milliseconds. · NTFY_SERVERS=JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand. · OTEL_ENABLED=Enable OpenTelemetry instrumentation (spans, metrics, completion logs). |
| 2026-08-23 | Package versions (raw): 2.3.0 → 2.3.2 |
| 2026-08-16 | Last changed in the registry (raw): – → 2026-07-30 |
| 2026-08-16 | First listed in the registry (raw): – → 2026-07-30 |
| 2026-08-16 | Registry status message (raw): – → – |
| 2026-08-16 | Schema version of the raw record (raw): – → https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json |
| 2026-08-16 | Icon formats (raw): – → – |
| 2026-08-16 | Environment variable descriptions (raw): – → LOGS_DIR=Directory for file-based logs (Node only; ignored on Workers). · MCP_AUTH_MODE=Authentication mode to use: 'none', 'jwt', or 'oauth'. · MCP_HTTP_ENDPOINT_PATH=The endpoint path for the MCP server. · MCP_HTTP_HOST=The hostname for the HTTP server. · MCP_HTTP_PORT=The port to run the HTTP server on. · MCP_LOG_LEVEL=Sets the minimum log level for output (e.g., 'debug', 'info', 'warn'). · MCP_SESSION_MODE=HTTP session model: 'stateless', 'stateful', or 'auto'. · NTFY_AUTH_PASSWORD=Basic-auth password for the single-server shorthand — must be set together with NTFY_AUTH_USERNAME. · NTFY_AUTH_TOKEN=Bearer access token (`tk_…`) for the single-server shorthand. Mutually exclusive with NTFY_AUTH_USERNAME / NTFY_AUTH_PASSWORD. · NTFY_AUTH_USERNAME=Basic-auth username for the single-server shorthand — must be set together with NTFY_AUTH_PASSWORD. · NTFY_BASE_URL=Single-server shorthand — base URL of the ntfy server (no trailing slash). Used when NTFY_SERVERS is unset. · NTFY_BLOCK_PRIVATE_HOSTS=When true, a per-call `base_url` override must resolve to a public address and its redirects are not followed. Servers registered under NTFY_SERVERS / NTFY_BASE_URL are exempt. Turn it on where callers you do not control can reach the server. · NTFY_DEFAULT_TOPIC=Topic used when a tool call omits `topic`. Treat the topic name as a secret — anyone who knows it can publish or subscribe. · NTFY_MAX_RETRIES=Max retry attempts for transient upstream failures (5xx, network, 429). · NTFY_REQUEST_TIMEOUT_MS=Per-request HTTP timeout in milliseconds. · NTFY_SERVERS=JSON array of `{ baseUrl, authToken? | authUsername?+authPassword? }` entries — one per ntfy server. First entry is the default base. Auth is scoped to the entry's `baseUrl`; per-call `base_url` overrides that match a registered base forward that server's auth. Takes precedence over the single-server NTFY_BASE_URL / NTFY_AUTH_* shorthand. · OTEL_ENABLED=Enable OpenTelemetry instrumentation (spans, metrics, completion logs). |
| 2026-08-16 | Environment variable formats (raw): – → string |
| 2026-08-16 | Delivery form (raw): – → package |
| 2026-08-16 | Remote hosts (raw): – → – |
| 2026-08-16 | Remote URLs (raw): – → – |
| 2026-08-16 | Runtime hints (raw): – → bun |
| 2026-08-16 | Package versions (raw): – → 2.3.0 |
| 2026-08-16 | Package identifiers (raw): – → ntfy-mcp-server |
| 2026-08-16 | Repository subfolder (raw): – → – |
| 2026-08-16 | Repository platform (raw): – → github |
| 2026-08-16 | Path environment variables (raw): – → – |
| 2026-08-16 | Required secret headers (raw): – → – |
| 2026-08-06 | Declared version: – → 2.3.0 |
| 2026-08-06 | Repository URL listed: – → yes |
| 2026-08-06 | Path argument present: – → no |
This view pages forward and states no total: individual rows are dropped only at output time when their evidence is missing. A counted total would be larger than what is shown.
tracevero · https://tracevero.com/mcp/io-github-cyanheads-ntfy-mcp-server/aenderungen