npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@topvisor/mcp-notifications

v1.0.3

Published

MCP server for desktop notifications over stdio

Readme

mcp-notifications

npm version

🚀 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:

  • title string (required)
  • message string (required)
  • play_sound boolean (optional, default: false)
  • icon string (optional, absolute or relative path to image file)
  • app_id string (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_id controls the source shown in Windows toast notifications.
  • If app_id is not set, Windows may show SnoreToast as the source.
  • You can pass app_id in each tool call, or set MCP_NOTIFICATIONS_APP_ID as an environment variable for the server.

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:

example.png