Releases: gitmotion/ntfy-me-mcp
Releases · gitmotion/ntfy-me-mcp
v1.4.2
ntfy-me-mcp v1.4.2
What's Changed
- fix: disregard empty strings for ntfyTopic & priority + README/CONTRIBUTING cleanup by @gitmotion in #16
| Input | Result |
|---|---|
![]() |
![]() |
Fixed
- Empty-string values passed to
topicandpriorityare now treated as absent instead of failing schema validation. - Blank fetch
prioritiesvalues now normalize cleanly instead of being carried through as invalid input. - Non-blank invalid topics still fail early validation, so malformed values like topics with dots, spaces, or over-length names are rejected before runtime.
Improved
- Added a dedicated
ntfyPriorityschema to centralize priority validation and normalization. - Aligned notify and fetch tool input handling around the newer
title/message/url/topicfield names. - Tightened fetch priority filtering so only known ntfy priority values are accepted.
- Expanded sanitized validation errors to cover the updated
urlandtopicfield names.
Tests
- Added regression coverage for blank
topicandpriorityinputs. - Added tests confirming invalid non-blank optional topics are rejected.
- Updated handler, schema, and message-fetch tests to match the new normalization behavior.
Docs
- Refreshed
README.mdwith clearer MCP configuration examples, including OpenCode, ClaudeCode, and Copilot CLI setups. - Cleaned up docs formatting, tables, anchors, and usage examples.
- Updated
CONTRIBUTING.mdto includenpm run typecheckand improved script documentation.
Notes
- Package version bumped to
1.4.2. - Compiled
build/output is included with this release.
Full Changelog: v1.4.1...v1.4.2
v1.4.1
Minor Dev Update
Update publish-docker.yml workflow dockerhub username to vars
- allow for proper attestation link and image tags in summary generation
- workflow summary: https://github.com/gitmotion/ntfy-me-mcp/actions/runs/24125656035
Full Changelog: v1.4.0...v1.4.1
v1.4.0
ntfy-me-mcp v1.4.0 Release Notes
This release delivers a security and maintainability upgrade, addressing prompt-injection risks, improving schema validation, and refactoring the codebase for clarity and testability.
Highlights
-
Security Hardening
- Strict URL validation for all ntfy server calls (prevents prompt injection via malicious URLs)
- Topic validation: only allows alphanumeric, underscore, hyphen (max 128 chars)
- Error sanitization: never reflects attacker-controlled content in error messages
- Removes all prompt-injection vectors from error handling and tool output
-
Schema-Driven Validation
- All tool input and config types are now Zod schemas (no duplicate interfaces)
- Schemas for notify, fetch, config, message data, and view actions
- TypeScript types are derived from schemas for runtime and compile-time safety
-
Handler & Utility Refactor
- Tool handler logic moved to
src/utils/toolHandlers.ts(factory pattern) - Logger abstraction enforced everywhere (no direct
console.*calls) - Markdown detection and action extraction modularized
- Tool handler logic moved to
-
Config & Workflow Improvements
.envloading is now silent (no stdout banner in MCP mode)PROTECTED_TOPICenv removed; token input is auto-detected via unresolved input reference- Updated Dockerfile, workflows, and VS Code MCP config for consistency
-
Test Coverage
- New and updated tests for schemas, handlers, validation, and message parsing
- General test coverage in
tests/and run via Vitest
-
Documentation & Contribution
- Updated
README.md,CONTRIBUTING.md, and.github/copilot-instructions.md - Issue and PR templates improved for clarity and security
- Updated
Migration Notes
PROTECTED_TOPICenv variable has been removed in favor of auto detection. (no longer needed in your mcp config)- All environment variables must be set in
.envor.vscode/mcp.jsonas before. - See the updated README for usage and configuration examples.
Changelog
- fix: add url validation during calls and error outputs (address #13)
- update dependencies
- add and update tests for all handlers, schemas, and validation
- update npm & docker workflows
- update issue and PR templates
- remove
PROTECTED_TOPICenv and autodetect based on${input:ntfy_token} - refactor schemas to their own files
- fix all PR review comments (security, logging, schema, config)
- add
.github/copilot-instructions.mdand improve contributing docs
What's Changed
- fix: add url validation during calls and error outputs (address #13). by @gitmotion in #14
- address #13
Full Changelog: v1.3.5...v1.4.0
Please report any issues or feedback.
v1.3.5
What's Changed
Fixes:
- bugfix: print/log to sys.stderr insted of sys.stdout #6 - thanks @michalcamona 🙏🏻
- bugfix: print/log to sys.stderr insted of sys.stdout #7 - thanks @michalcamona 🙏🏻
Enhancements:
- introduce logger abstraction, update readme, bump version to v1.3.5, include gh pull request template #8 / #9 - @gitmotion
- for any future updates you can just use
logger.info,logger.warn,logger.errorrespectively- internally uses console.error for each method to ensure we add logs to stderr
- shown in the logger class https://github.com/gitmotion/ntfy-me-mcp/blob/main/src/utils/logger.ts
Full Changelog: v1.3.1...v1.3.5
Latest Packages & Images:
npm:
ntfy-me-mcp
gitmotion/ntfy-me-mcp:latestgitmotion/ntfy-me-mcp:1.3.5
ghcr.io/gitmotion/ntfy-me-mcp:latestghcr.io/gitmotion/ntfy-me-mcp:1.3.5
v1.3.1
What's Changed
Documentation Update:
- Add MseeP.ai badge by @lwsinclair in #3
New Contributors
- @lwsinclair made their first contribution in #3
Full Changelog: v1.3.0...v1.3.1
v1.3.0
What's Changed
- v1.3.0 includes changes for fetching ntfy notifications using natural language or with the newly specified tool
ntfy_me_fetch. - add MCP server badge by @punkpeye in #1
- Deployment: Dockerfile and Smithery config by @calclavia in #2
- v1.2.0 - included changes for intelligent features like automatic URL detection for creating view actions and smart markdown formatting detection, making it easier for AI assistants to create rich, interactive notifications without extra configuration.
New Contributors
- @punkpeye made their first contribution in #1
- @calclavia made their first contribution in #2
Full Changelog: https://github.com/gitmotion/ntfy-me-mcp/commits/v1.3.0
Download options:
- (Attached) pre-built js build files
- (Attached) npm .tgz
- npm
npm install -g ntfy-me-mcp- https://www.npmjs.com/package/ntfy-me-mcp
- Docker images:
- DockerHub:
gitmotion/ntfy-me-mcp:latest - GHCR:
ghcr.io/gitmotion/ntfy-me-mcp:latest
- DockerHub:

