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., "@Claude Code Notification Hookssend a test success notification to check the sound"
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.
š Claude Code Notification Hooks
ā ļø DEPRECATED: This project has been superseded by cat-ccnotify-hook. Please use the new standalone package for better performance and easier installation.
Enhanced Claude Code experience with automatic desktop notifications and contextual sounds for all events. No manual notification calls needed - works automatically with all Claude Code operations!
⨠Features
š Automatic Notifications: Intercepts ALL Claude Code notifications and enhances them
šµ Contextual Sounds: Different sounds for success, error, warning, and other event types
š Zero Configuration: Automatic detection and enhancement of notification types
š Smart Sound Mapping: Intelligent analysis of notification content for appropriate sounds
š±ļø Native System Integration: Uses macOS/Windows/Linux native notification systems
š Quick Start
Method 1: One-Command Setup (Recommended)
Run this in Claude Code:
Method 2: Manual Setup
Clone and build:
Run setup:
Restart Claude Code if it's currently running
3. That's It!
All Claude Code notifications will now automatically have enhanced sounds and styling. No additional configuration needed!
š± How It Works
The notification hook automatically detects and enhances all Claude Code notifications:
Automatic Sound Assignment
ā Success/Completion ā Glass sound (macOS)
šØ Errors/Failures ā Basso sound (macOS)
ā ļø Warnings/Attention ā Sosumi sound (macOS)
š” Info/Updates ā Blow sound (macOS)
ā³ Progress/Ongoing ā Tink sound (macOS)
Examples in Action
šµ Available Sounds
Sound | Use Case | macOS Sound |
| Task completion, success | Glass |
| Errors, failures | Basso |
| Warnings, attention needed | Sosumi |
| Information, status updates | Blow |
| Progress updates, ongoing work | Tink |
| Reminders, prompts | Ping |
| System default notification sound | - |
| No sound | - |
š ļø Advanced Configuration
Customizing Sound Mappings
Edit the hook script at hooks/notification-hook.js to customize sound mappings:
Troubleshooting
Hook not working?
Sounds not playing?
š Real-World Examples
Automatic Enhancement Examples
Claude Code Operations ā Enhanced Notifications
š§ Development
Development Commands
Platform Support
macOS: Full native support with
osascriptand system soundsWindows/Linux: Cross-platform support via
node-notifierpackage
Architecture
Type-safe TypeScript implementation
MCP (Model Context Protocol) compliant
Automatic platform-specific implementation switching
Extensible notification type system
š Technical Details
Hook Architecture
The notification hook intercepts Claude Code's notification system and enhances it:
Interception: Hook receives all notification calls from Claude Code
Analysis: Analyzes notification content using pattern matching
Enhancement: Adds appropriate sounds and styling based on content
Native Integration: Uses platform-specific notification APIs
Installation Structure
Platform Support
macOS: Full native support with
osascriptand system soundsWindows/Linux: Cross-platform support via
node-notifierpackage
Legacy MCP Server (Optional)
For advanced users who want manual notification control, the MCP server is still available:
š¤ Contributing
Bug reports and feature requests are welcome! Please open an issue.
š License
MIT License