Notifications MCP Server
Triggers macOS sound and visual notifications when tasks start or complete.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Notifications MCP Serversend a notification when the long-running script finishes"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Notifications MCP Server
MCP server that lets Claude Desktop or another MCP client trigger macOS sound and visual notifications through a task_status tool.
Current Status
This is a macOS-focused utility. It is not an automatic Claude completion detector by itself: an MCP client or model must call the task_status tool when it wants a notification.
What Works Today
Registers a
task_statusMCP tool.Plays macOS system sounds with
afplay.Sends visual notifications using terminal-notifier, AppleScript, PyObjC, or pync fallbacks.
Supports separate start and completion sounds.
Supports disabling visual notifications through an environment variable.
Includes tests for the modular notification and sound managers.
Important Limitations
macOS is the only implemented platform.
Linux and Windows support are not implemented.
Notifications only happen when the MCP tool is called.
The packaged console script is
claude-notifications.The Python package is
notifications; there is nonotifications_mcp_servermodule entry point.Custom sound configuration uses environment variables, not the JSON configuration block that older README versions showed.
Installation
pip install notifications-mcp-serverOptional visual notification dependencies:
pip install "notifications-mcp-server[visual]"
pip install "notifications-mcp-server[pync]"For terminal-notifier fallback support:
brew install terminal-notifierClaude Desktop Configuration
Use the console script installed by the package:
{
"mcpServers": {
"notifications": {
"command": "claude-notifications"
}
}
}Restart Claude Desktop after changing the config.
Configuration
Environment variables:
export CLAUDE_START_SOUND="/System/Library/Sounds/Glass.aiff"
export CLAUDE_COMPLETE_SOUND="/System/Library/Sounds/Hero.aiff"
export CLAUDE_VISUAL_NOTIFICATIONS="true"
export CLAUDE_NOTIFICATION_ICON="/path/to/icon.png"If no custom sounds are set, the server uses macOS system sounds.
MCP Tool
task_status
Input:
{
"message": "Task completed"
}Messages containing start or processing are treated as start notifications. Other messages are treated as completion notifications.
Verification Demo
Run the local diagnostic script on macOS to test the available notification paths:
python3 test_notification.pyThe MCP tool returns a compact status object after attempting sound and visual notification delivery:
{
"status": "success",
"message": "Task completed",
"sound": "/System/Library/Sounds/Hero.aiff",
"visual": true
}For a quieter smoke test that skips visual notification prompts:
CLAUDE_VISUAL_NOTIFICATIONS=false claude-notificationsDevelopment
git clone https://github.com/charles-adedotun/notifications-mcp-server.git
cd notifications-mcp-server
pip install -e ".[dev]"
pytestLicense
MIT
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Tools
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/charles-adedotun/notifications-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server