Enables triggering macOS notifications, system sounds, and text-to-speech functionality, with support for customizable banner notifications, voice selection, and speech parameters.
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., "@macOS Notification MCPplay the Ping sound to alert me when the download 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.
π macOS Notification MCP
A Model Context Protocol (MCP) server that enables AI assistants to trigger macOS notifications, sounds, and text-to-speech.
β¨ Features
π Sound Notifications: Play system sounds like Submarine, Ping, or Tink
π¬ Banner Notifications: Display visual notifications with customizable title, message, and subtitle
π£οΈ Speech Notifications: Convert text to speech with adjustable voice, rate, and volume
ποΈ Voice Management: List and select from available system voices
π§ͺ Testing Tools: Diagnostic utilities to verify all notification methods
Related MCP server: XcodeBuildMCP
π Quick Start with uvx (Recommended)
The fastest way to use this tool is with uvx, which runs packages without permanent installation:
# Install uv if you don't have it
curl -LsSf https://astral.sh/uv/install.sh | sh
# Run the MCP server directly (no installation needed)
uvx macos-notification-mcpβοΈ Configure Claude Desktop
Add this to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"macos-notification-mcp": {
"command": "uvx",
"args": ["macos-notification-mcp"]
}
}
}Then restart Claude Desktop.
π¦ Alternative Installation Methods
Standard installation:
pip install macos-notification-mcpInstall from source:
git clone https://github.com/devizor/macos-notification-mcp
cd macos-notification-mcp
pip install .π οΈ Available Notification Tools
π Sound Notification
sound_notification(sound_name="Submarine")Available sounds: Basso, Blow, Bottle, Frog, Funk, Glass, Hero, Morse, Ping, Pop, Purr, Sosumi, Submarine, Tink
π¬ Banner Notification
banner_notification(
title="Task Complete",
message="Your analysis is ready",
subtitle=None, # Optional
sound=False, # Optional: Play sound with notification
sound_name=None # Optional: Specify system sound
)π£οΈ Speech Notification
speak_notification(
text="The process has completed",
voice=None, # Optional: System voice to use
rate=150, # Optional: Words per minute (default: 150)
volume=1.0 # Optional: Volume level 0.0-1.0
)ποΈ Voice Management
list_available_voices() # Lists all available text-to-speech voicesπ§ͺ Testing
test_notification_system() # Tests all notification methodsπ Implementation Details
β±οΈ Rate Limiting: Notifications are processed one at a time with a minimum interval of 0.5 seconds
π Queuing: Multiple notification requests are handled sequentially
πͺ OS Integration: Uses native macOS commands (
afplay,osascript,say)π FastMCP: Built on the FastMCP framework for AI communication
β οΈ Troubleshooting
π Permissions: Ensure notifications are allowed in System Settings β Notifications
β³ Timing: Only one notification is processed at a time
π Environment: If using the command directly (not uvx), you may need to use full paths
π License
MIT License
This server cannot be installed
Resources
Looking for Admin?
Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.