NotifyMeMaybe
A server for sending multi-platform notifications and creating interactive AI workflows, with support for Telegram, webhooks, and synchronous user interactions.
NotifyMeMaybe
A powerful MCP (Model Context Protocol) server for multi-platform notifications and interactive AI workflows
đ TLDR - Quick Start
Get started in 2 minutes:
-
Create Telegram Bot:
- Message @BotFather on Telegram
- Use
/newbot
to create a bot and get yourBOT_TOKEN
- Start a chat with your bot and get your
CHAT_ID
-
Add to MCP Configuration:
{ "mcpServers": { "notify-me-maybe": { "command": "npx", "args": ["-y", "notify-me-maybe-mcp"], "env": { "TELEGRAM_BOT_TOKEN": "your_bot_token_here", "TELEGRAM_CHAT_ID": "your_chat_id_here", "TELEGRAM_PROMPT_ENABLED": "true", "TELEGRAM_INTERACTION_ENABLED": "true", "DEFAULT_NOTIFICATION_SERVICE": "telegram", "LANGUAGE": "en" } } } }
-
Restart Your AI Assistant:
- Claude Desktop: Restart the application
- Cursor: Restart and activate the MCP configuration
-
Test: Ask your AI assistant to send you a notification!
That's it! đ No installation, no cloning, no building required.
đ Language Support
- English (Current) - You are here
- įšéĢ䏿 - Traditional Chinese
- įŽäŊ䏿 - Simplified Chinese
đ¤ AI Assistant Integration (Agent Prompts)
Ready to integrate with your AI assistant? Choose the right prompt configuration for your needs:
đ Available Agent Prompt Configurations
Prompt Type | Description | Best For | Key Tools |
---|---|---|---|
Notification Only | Simple task completion notifications | Basic notification needs | send_notification , broadcast_notification |
Interactive Basic | Telegram interactions + notifications | User input & confirmations | request_interaction_sync , send_notification |
Interactive Advanced | Continuous workflow with follow-up prompts | Complex multi-step tasks | get_telegram_prompts , process_telegram_prompt , request_interaction_sync |
đ¯ Quick Start for AI Assistants
- Choose a prompt type below
- Copy the complete prompt configuration
- Add to your AI assistant system prompt (Cursor, Claude, etc.)
- Configure your NotifyMeMaybe services
- Start getting notifications and interactions!
Features
đ Multi-Channel Notifications
- Telegram Integration: Send notifications directly to Telegram chats
- Webhook Support: HTTP webhook notifications for custom integrations
- Priority Levels: High, normal, and low priority notifications
- Rich Metadata: Attach custom data to notifications
đ¤ Interactive Prompt Engine
The core feature of NotifyMeMaybe is its sophisticated prompt engine that enables bi-directional communication between AI systems and users:
Interaction Types
- Confirmation Requests: Yes/No decisions with button interfaces
- Text Prompts: Collect text input from users
- Selection Menus: Multiple choice options with custom buttons
- Synchronous & Asynchronous: Both real-time and queued interactions
AI Workflow Integration
- MCP (Model Context Protocol) Compatible: Seamlessly integrates with Claude and other AI systems
- Timeout Management: Configurable timeouts with fallback handling
- Queue Management: Handle multiple concurrent user interactions
- Response Validation: Ensure proper user response formatting
Advanced Features
- Auto-reject: Automatically handle expired interactions
- Broadcast Notifications: Send to all active channels simultaneously
- Service Health Monitoring: Real-time status of all notification services
- Internationalization: Multi-language support (English, Traditional Chinese, Simplified Chinese)
Agent Prompt Configurations
1. đĸ Notification-Only Mode
Copy this prompt configuration for your AI assistant:
## NotifyMeMaybe Notification-Only Mode Configuration
### When to use NotifyMeMaybe tools:
- **ALWAYS** notify when tasks are completed
- Send progress updates for long-running operations
- Notify on errors or important status changes
### Required MCP Tools Usage:
#### Task Completion Notifications:
Use `send_notification` or `broadcast_notification` when:
- Any task is completed successfully
- An error occurs during task execution
- Important milestones are reached
Parameters:
- service: "telegram" (or use broadcast_notification for all services)
- title: Clear, concise summary of what was accomplished
- message: Detailed results, file paths, URLs, or error details
- priority: "high" (errors), "normal" (completions), "low" (progress updates)
- metadata: Include relevant context like file paths, timestamps, etc.
#### Example Usage:
send_notification(
service="telegram",
title="Task Completed: Code Analysis",
message="Successfully analyzed 15 files and found 3 potential issues. Results saved to /reports/analysis.json",
priority="normal",
metadata={"files_analyzed": 15, "issues_found": 3, "report_path": "/reports/analysis.json"}
)
### Service Health Check:
Use `test_services` periodically to ensure services are available.
2. đ Interactive Mode
Copy this prompt configuration for your AI assistant:
## NotifyMeMaybe Interactive Mode Configuration
### When to use NotifyMeMaybe tools:
- Request user input when clarification is needed
- Ask for confirmations before major operations
- Provide selection menus for user choices
- Send completion notifications
### Required MCP Tools Usage:
#### User Interaction Requests:
Use `request_interaction_sync` when:
- You need user confirmation before proceeding
- You require text input from the user
- You want to offer multiple choice options
Parameters:
- type: "confirmation" (Yes/No), "prompt" (text input), "selection" (multiple choice)
- message: Clear question or request for user
- options: Array of choices (only for type="selection")
- timeout: 60000 (60 seconds) or appropriate timeout
#### Examples:
Confirmation Request:
request_interaction_sync(
type="confirmation",
message="Do you want to proceed with deleting 5 files from the project directory?"
)
Text Input Request:
request_interaction_sync(
type="prompt",
message="Please provide the target deployment environment (staging/production):"
)
Selection Menu:
request_interaction_sync(
type="selection",
message="Choose the deployment strategy:",
options=["Blue-Green Deployment", "Rolling Update", "Canary Release"]
)
#### Completion Notifications:
Always send completion notifications using `send_notification` after tasks finish.
#### Error Handling:
- Handle interaction timeouts gracefully
- Provide fallback responses if user doesn't respond
- Use high priority notifications for critical errors
3. đ Advanced Interactive Mode
Copy this complete prompt configuration for your AI assistant:
## NotifyMeMaybe Advanced Interactive Mode Configuration
### Core Agent Behavior Rules:
- **ALWAYS** check for new Telegram prompts at session start
- **NEVER** end a session without asking for additional requests
- **ALWAYS** process pending prompts before starting new tasks
- **ALWAYS** send progress notifications for long operations
### Required MCP Tools Usage Protocol:
#### 1. Session Start Protocol:
ALWAYS execute at the beginning of each session:
1. Check for pending prompts:
get_telegram_prompts()
2. If prompts exist, process each one:
process_telegram_prompt(
promptId="<prompt_id>",
response="Received your request. Processing now..."
)
3. Send status notification:
send_notification(
service="telegram",
title="AI Session Started",
message="Processing your Telegram requests. Session active.",
priority="normal"
)
#### 2. Task Execution Protocol:
During task execution:
1. Send progress updates for long operations:
send_notification(
service="telegram",
title="Progress Update",
message="Step 2/5 completed: Database backup finished",
priority="normal",
metadata={"step": 2, "total_steps": 5}
)
2. Use interactions when user input needed:
request_interaction_sync(
type="confirmation",
message="Ready to proceed with database migration. Continue?"
)
3. Handle errors with high priority:
send_notification(
service="telegram",
title="Error Occurred",
message="Database connection failed. Retrying in 30 seconds...",
priority="high"
)
#### 3. Session End Protocol:
**MANDATORY**: Never end without this sequence:
1. Send completion notification:
send_notification(
service="telegram",
title="Task Completed Successfully",
message="All requested operations completed. Summary: [detailed results]",
priority="normal"
)
2. ALWAYS ask for additional requests:
request_interaction_sync(
type="prompt",
message="Task completed successfully. Do you have any additional instructions or follow-up requests?",
timeout=60000
)
3. Continue interaction loop until user indicates completion
4. Only stop when user explicitly says "finished", "done", "no more tasks", or similar
#### 4. Telegram Prompt Monitoring:
Regularly check for new prompts:
- Use get_telegram_prompts() to check queue
- Process immediately with process_telegram_prompt()
- Prioritize user prompts over automated tasks
#### 5. Service Health Monitoring:
Periodically verify services:
test_services()
get_service_status(service="telegram")
### Advanced Mode Benefits:
- Users can send tasks anytime via Telegram
- AI automatically processes queued requests
- Continuous workflow without manual intervention
- Comprehensive progress tracking
- Error recovery with user guidance
đĻ Installation & Setup
đ Method 1: NPX (Recommended)
Add to your MCP configuration file:
Configuration File Locations:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Linux:
~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"notify-me-maybe": {
"command": "npx",
"args": ["-y", "notify-me-maybe-mcp"],
"env": {
"TELEGRAM_BOT_TOKEN": "your_bot_token_here",
"TELEGRAM_CHAT_ID": "your_chat_id_here",
"TELEGRAM_PROMPT_ENABLED": "true",
"TELEGRAM_INTERACTION_ENABLED": "true",
"DEFAULT_NOTIFICATION_SERVICE": "telegram",
"LANGUAGE": "en"
}
}
}
}
â ī¸ Important: After configuration, restart your AI assistant completely.
đ ī¸ Method 2: Local Development
For developers who want to modify the code:
git clone https://github.com/keoy7am/NotifyMeMaybe.git
cd NotifyMeMaybe
npm install
npm run build
đą Getting Telegram Credentials
- Create Bot: Message @BotFather â
/newbot
- Get Chat ID: Send message to your bot, visit
https://api.telegram.org/bot<TOKEN>/getUpdates
đ§ Configuration
Required Variables
TELEGRAM_BOT_TOKEN=your_bot_token_here
TELEGRAM_CHAT_ID=your_chat_id_here
Optional Variables
TELEGRAM_PROMPT_ENABLED=true
TELEGRAM_INTERACTION_ENABLED=true
DEFAULT_NOTIFICATION_SERVICE=telegram
LANGUAGE=en
đ ī¸ MCP Tools
send_notification
: Send to specific servicebroadcast_notification
: Send to all servicesrequest_interaction_sync
: Synchronous user interactiontest_services
: Health check all servicesget_telegram_prompts
: Retrieve pending promptsprocess_telegram_prompt
: Process Telegram prompts
đ¤ Contributing
Contributions welcome! Please:
- Fork the repository
- Create a feature branch
- Submit a pull request
đ License
MIT License - see LICENSE file for details.
đ¯ Ready to Get Started?
Quick Start (Recommended)
- Get Telegram bot token
- Add MCP configuration
- Restart your AI assistant
- Test with a notification!
Advanced Setup
- Choose an Agent Prompt Configuration
- Copy to your AI assistant system prompt
- Configure advanced features
- Build interactive workflows!
đĻ NPM Package
npm view notify-me-maybe-mcp
npx notify-me-maybe-mcp # Use directly
NotifyMeMaybe - Making AI-human interaction seamless! đ
đĄ Pro Tip: Don't forget to restart your AI assistant after configuration!
Related Servers
MCP LinkedIn
Interact with LinkedIn using an unofficial API, requiring email and password for authentication.
Email
Automate email tasks using SMTP and IMAP protocols.
Email MCP Server
Send emails via SMTP. Requires SMTP server credentials to be configured through environment variables.
CData Email Server
A read-only MCP server for querying live email data using the CData JDBC Driver.
News Feed
A news feed server for aggregating news from various sources.
RocketMQ
A server for interacting with Apache RocketMQ, a distributed messaging and streaming platform, requiring environment variables for configuration.
MCP-Pushover Bridge
Enables AI assistants to send push notifications via the Pushover service.
Discord
A server for reading and sending messages on Discord.
MCP Feedback Collector
A server for collecting user feedback and AI work reports.
MCP Server for Intercom
Access and analyze customer support data from Intercom.