Skip to content

Releases: gitmotion/ntfy-me-mcp

v1.4.2

11 Apr 22:20
2237cf9

Choose a tag to compare

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
Image Image

Fixed

  • Empty-string values passed to topic and priority are now treated as absent instead of failing schema validation.
  • Blank fetch priorities values 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 ntfyPriority schema to centralize priority validation and normalization.
  • Aligned notify and fetch tool input handling around the newer title / message / url / topic field names.
  • Tightened fetch priority filtering so only known ntfy priority values are accepted.
  • Expanded sanitized validation errors to cover the updated url and topic field names.

Tests

  • Added regression coverage for blank topic and priority inputs.
  • 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.md with clearer MCP configuration examples, including OpenCode, ClaudeCode, and Copilot CLI setups.
  • Cleaned up docs formatting, tables, anchors, and usage examples.
  • Updated CONTRIBUTING.md to include npm run typecheck and 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

08 Apr 08:26

Choose a tag to compare

Minor Dev Update

Update publish-docker.yml workflow dockerhub username to vars

Full Changelog: v1.4.0...v1.4.1

v1.4.0

08 Apr 06:51
35ef900

Choose a tag to compare

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
  • Config & Workflow Improvements

    • .env loading is now silent (no stdout banner in MCP mode)
    • PROTECTED_TOPIC env 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

Migration Notes

  • PROTECTED_TOPIC env variable has been removed in favor of auto detection. (no longer needed in your mcp config)
  • All environment variables must be set in .env or .vscode/mcp.json as 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_TOPIC env 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.md and improve contributing docs

What's Changed

  • fix: add url validation during calls and error outputs (address #13). by @gitmotion in #14

Full Changelog: v1.3.5...v1.4.0

Please report any issues or feedback.

v1.3.5

06 Aug 18:19
cf09dad

Choose a tag to compare

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:

Full Changelog: v1.3.1...v1.3.5

Latest Packages & Images:

npm:

  • ntfy-me-mcp

docker hub

  • gitmotion/ntfy-me-mcp:latest
  • gitmotion/ntfy-me-mcp:1.3.5

ghcr

  • ghcr.io/gitmotion/ntfy-me-mcp:latest
  • ghcr.io/gitmotion/ntfy-me-mcp:1.3.5

v1.3.1

14 May 18:26

Choose a tag to compare

What's Changed

Documentation Update:

New Contributors

Full Changelog: v1.3.0...v1.3.1

v1.3.0

18 Apr 23:35

Choose a tag to compare

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

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
  • Docker images:
    • DockerHub: gitmotion/ntfy-me-mcp:latest
    • GHCR: ghcr.io/gitmotion/ntfy-me-mcp:latest

Check out the Quickstart guide here