📇 ☁️ 🏠 - Send and fetch ntfy notifications on a self-hosted ntfy server, with token auth support
ntfy-me-mcp
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
> A streamlined Model Context Protocol (MCP) server for sending and fetching notifications via the ntfy service (public or self-hosted, with token support) 📲
Overview
ntfy-me-mcp provides AI assistants with the ability to send real-time notifications to your devices through the ntfy.sh service (either public or selfhosted with token support). Get notified when your AI completes tasks, encounters errors, or reaches important milestones - all without constant monitoring.
The server includes 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.
Preview
Available via
Name Link / Badge
ntfy.sh
Featured on ntfy.sh
Glama.ai
LightNow
MseeP.ai
Archestra.ai
Features
- 🚀 **Quick Setup**: Run with npx or docker!
- 🔔 **Real-time Notifications**: Get updates on your phone/desktop when tasks complete
- 🎨 **Rich Notifications**: Support for topic, title, priorities, emoji tags, and detailed messages
- 🔍 **Notification Fetching**: Fetch and filter cached messages from your ntfy topics
- 🎯 **Smart Action Links**: Automatically detects URLs in messages and creates view actions
- 🔗 **Click URLs**: Choose the link that opens when the notification is tapped
- 📄 **Intelligent Markdown**: Auto-detects and enables markdown formatting when present
- 🔒 **Secure**: Optional authentication with access tokens
- 🔑 **Input Masking**: Securely store your ntfy token in your vs config!
- 🌐 **Self-hosted Support**: Works with both ntfy.sh and self-hosted ntfy instances
Coming soon...
- 📨 **Email**: Send notifications to email (requires ntfy email server configuration)
- 🖼️ **Image urls**: Intelligent image url detection to automatically include image urls in messages and notifications
- 🏁 and more!
Table of Contents
Section
Topics
Quickstart - MCP Server Configuration
Configuration Examples
Installation
Setting Up the Notification Receiver
Configuration
Environment Variables
Authentication
↳ Secure Token Handling (vscode)
Tools & Usage
ntfy_me: Sending Notifications
↳ Using Natural Language
↳ Example Usage
↳ Message Parameters
ntfy_me_fetch: Polling Notifications
↳ Using Natural Language
↳ Example Usage
↳ Fetch Parameters
Tool output
Security
Development & Contributions
License
Quickstart - MCP Server Configuration
Choose the config shape that matches your client. All examples below use NTFY_TOPIC as the required variable and keep the optional auth settings commented out until you need them.
> **Tested with Ontheia:** Ontheia, a self-hosted, open-source AI agent platform, reports that ntfy-me-mcp works with it and lists it among its compatible MCP servers.
> **Requirements:** Node.js 24 or newer for the npx, global and local options. CI and the Docker image use Node 24. Node 22 and earlier aren't supported (npm warns EBADENGINE). The Docker option needs only Docker.
Configuration Examples
Type
Use Case
Example
NPM / NPX
Recommended for most MCP clients when you want the lightest setup.
Show config
{
"ntfy-me-mcp": {
"command": "npx",
"args": ["-y", "ntfy-me-mcp"],
"env": {
"NTFY_TOPIC": "your-ntfy-topic",
"NTFY_URL": "https://ntfy.sh",
// "NTFY_TOKEN": "add-your-ntfy-token"
}
}
}
Local
Use a local checkout when you are developing or changing the server yourself.
Replace /absolute/path/to/ntfy-me-mcp/build/index.js after building.
Show config
{
"ntfy-me-mcp": {
"command": "node",
"args": ["/absolute/path/to/ntfy-me-mcp/build/index.js"],
"env": {
"NTFY_TOPIC": "your-ntfy-topic",
"NTFY_URL": "https://ntfy.sh",
// "NTFY_TOKEN": "add-your-ntfy-token"
}
}
}
Docker
Use a containerized setup when Docker is already part of your environment.
- DockerHub: gitmotion/ntfy-me-mcp:latest - GHCR: ghcr.io/gitmotion/ntfy-me-mcp:latest
Show config
{
"ntfy-me-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"NTFY_TOPIC",
"-e",
"NTFY_URL",
"-e",
"NTFY_TOKEN",
"gitmotion/ntfy-me-mcp:latest"
],
"env": {
"NTFY_TOPIC": "your-ntfy-topic",
"NTFY_URL": "https://ntfy.sh",
// "NTFY_TOKEN": "add-your-ntfy-token"
}
}
}
OpenCode
Add to opencode.json in your project root (for project-level config) or ~/.config/opencode/opencode.json (for global config). Uses "mcp" as the top-level key with type: "local" and command as an array.