mcp-notifications
Enables MCP agents to send desktop notifications for completed tasks, failures, and important updates, providing visible and reliable feedback.
README
mcp-notifications
๐ Ship faster. Miss nothing.
mcp-notifications lets your MCP agent send desktop notifications for completed tasks, failures, and important updates.
This is especially useful for console AI agents, because they usually have no built-in notifications by default.
No more checking chats every minute.
No more silent agent responses.
Just visible, reliable feedback on your desktop. ๐
Common problem this solves
You give tasks to several AI agents, then wait and keep checking who already replied.
With mcp-notifications, this gets simpler: the agent can notify you on desktop when it needs your input or when work
is done.
Why teams install this
- โก Immediate feedback from your MCP workflows.
- ๐ง Better focus: let the agent work while you stay on your main task.
- ๐ฅ๏ธ Native OS notifications via
node-notifier. - ๐งต Non-blocking behavior: notification sending is queued in background.
Install globally
Requirements:
- Node.js
>=20 - npm
>=10
npm i -g @topvisor/mcp-notifications
Executable name (use this in MCP config):
mcp-notifications
mcp-notifications is an MCP server entrypoint (stdio), not a one-shot notification command.
Setup: Codex
Add this to ~/.codex/config.toml:
[mcp_servers.notifications]
enabled = true
command = "mcp-notifications"
args = []
Restart Codex after config update.
Setup: Claude Agent
Add MCP server config to your Claude client config file:
{
"mcpServers": {
"notifications": {
"command": "mcp-notifications",
"args": []
}
}
}
Then restart Claude client.
AI Agent Notification Instructions
There are two approaches to notifications: manual and automatic.
Choose the one that works better for your workflow.
Manual
In a task where you want to be notified, explicitly ask the agent. Example:
Count files in the project; after the task is fully complete, notify me with sound.
You can also define sound, topic, and frequency rules inside a specific chat. Example:
Notify me about your replies without sound, include the reply text, and use title: "Large Refactoring"
Automatic
Automatic notifications can be configured globally or per project.
Example instruction to enable automatic notifications for agent replies:
Send `send_notification` after your replies (actual task time >5 seconds or many steps); `play_sound: false`; `app_id: '{put your chat name here}'`
Time is a rough threshold and depends on model behavior, so adjust this instruction to your own preferences.
In Skills
You can also enable notifications in specific skills. Example for a Review skill:
After the review, run `send_notification` with a short summary; `play_sound: true`; `app_id: 'Reviewer {put task id here}'`
Tool
send_notification
Input:
titlestring(required)messagestring(required)play_soundboolean(optional, default:false)iconstring(optional, absolute or relative path to image file)app_idstring(optional, Windows App User Model ID for toast source)
Example:
{
"title": "Codex",
"message": "Deployment completed successfully",
"play_sound": true,
"icon": "/opt/mcp-notifications/icons/custom.png",
"app_id": "Topvisor.Codex"
}
app_id (Windows)
app_idcontrols the source shown in Windows toast notifications.- If
app_idis not set, Windows may showSnoreToastas the source. - You can pass
app_idin each tool call, or setMCP_NOTIFICATIONS_APP_IDas an environment variable for the server.
Backend selection
You can select notification transport via env MCP_NOTIFICATIONS_BACKEND:
auto(default): usespowershellin WSL if available, otherwisenode-notifierpowershell: forcepowershell.exeWindows toast transport (recommended for WSL)node-notifier: forcenode-notifierpackage
Chat Prompts To Test In Codex
Use these messages directly in chat:
Check send_notification
Send a notification without sound: title "Test", message "Check"
Send a notification with sound: title "Test", message "Check"
Send a notification with app_id "Topvisor.Codex": title "Test", message "Check"
Send 3 test notifications in a row without sound
Expected tool result in logs/response:
Notification queued
Behavior
- โ Uses standard system notification channels.
- ๐ Uses the standard system notification sound when
play_sound: true. - ๐ค Uses bundled Topvisor robot image as default notification icon.
- ๐งฐ Returns quickly while notifications are delivered in background queue.
Example
The AI agent is waiting for you:

Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.