Thanks to visit codestin.com
Credit goes to github.com

Skip to content

A simple Bash JSON-RPC MCP server for sending desktop notifications via notify-send. Supports listing tools and showing notifications with customizable title and message.

License

Notifications You must be signed in to change notification settings

longdog/notify-mcp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

notify-mcp

A lightweight Bash-based Model Context Protocol (MCP) server for sending desktop notifications via notify-send. This zero-dependency server enables AI assistants like Claude, Cursor, and VS Code to send system notifications directly to your Linux desktop.

Prerequisites

  • Linux system with notification support
  • notify-send command (usually provided by libnotify package)
  • jq tool

Installing notify-send

If notify-send is not installed on your system:

Ubuntu/Debian:

sudo apt-get install libnotify-bin

Fedora/RHEL:

sudo dnf install libnotify

Arch Linux:

sudo pacman -S libnotify

Alt Linux:

sudo apt-get install notify-send

Installation

  1. Clone the repository:
git clone https://github.com/longdog/notify-mcp.git
cd notify-mcp
  1. Make the script executable:
chmod +x notify-mcp.sh
  1. (Optional) Add to your PATH for easier access:
sudo ln -s $(pwd)/notify-mcp.sh /usr/local/bin/notify-mcp

Configuration

Claude Desktop

Claude Desktop uses a JSON configuration file to define MCP servers.

  1. Open Claude Desktop settings:

    • Click Claude menu → SettingsDeveloper tab
    • Click Edit Config to open claude_desktop_config.json
  2. Add the notify-mcp server configuration:

{
  "mcpServers": {
    "notify": {
      "command": "/absolute/path/to/notify-mcp.sh",
      "args": []
    }
  }
}

Example with full path:

{
  "mcpServers": {
    "notify": {
      "command": "/home/username/notify-mcp/notify-mcp.sh",
      "args": []
    }
  }
}
  1. Save the file and restart Claude Desktop

  2. Verify the connection by looking for the MCP server indicator (🔌 icon) in the Claude Desktop interface

Cursor

Cursor IDE supports MCP servers through its settings configuration.

  1. Open Cursor settings:

    • Press Ctrl+Shift+P (Linux/Windows) or Cmd+Shift+P (macOS)
    • Search for "MCP: Add MCP Server"
    • Select Command (stdio)
  2. Configure the server:

    • Name: notify
    • Command: /absolute/path/to/notify-mcp.sh
    • Arguments: (leave empty)

Alternative: Manual configuration

Edit your Cursor settings file (.cursor/mcp.json in your workspace):

{
  "mcpServers": {
    "notify": {
      "command": "/home/username/notify-mcp/notify-mcp.sh",
      "args": []
    }
  }
}
  1. Restart Cursor to apply changes

VS Code

VS Code supports MCP servers through the GitHub Copilot extension.

  1. Via Command Palette:

    • Press Ctrl+Shift+P (Linux/Windows) or Cmd+Shift+P (macOS)
    • Run "MCP: Add Server"
    • Select Command (stdio)
    • Enter the server information:
      • Name: notify
      • Command: /absolute/path/to/notify-mcp.sh
  2. Via Configuration File:

    Add to your user settings (.vscode/mcp.json) or workspace settings:

{
  "servers": {
    "notify": {
      "command": "/home/username/notify-mcp/notify-mcp.sh",
      "args": []
    }
  }
}
  1. Restart VS Code to load the MCP server

  2. Verify by running "MCP: List Servers" from the Command Palette

Gemini CLI

The Gemini CLI supports MCP servers through its settings configuration file.

  1. Locate your Gemini CLI settings file:
~/.gemini/settings.json
  1. Add the notify-mcp server to the mcpServers section:
{
  "mcpServers": {
    "notify": {
      "command": "/home/username/notify-mcp/notify-mcp.sh",
      "args": []
    }
  }
}

Complete example:

{
  "apiKey": "your-api-key",
  "mcpServers": {
    "notify": {
      "command": "/home/username/notify-mcp/notify-mcp.sh",
      "args": []
    }
  }
}
  1. Restart Gemini CLI or start a new session:
gemini-cli
  1. Verify the server is loaded:
/mcp

This will list all connected MCP servers, including notify.

Alternative: Using STDIO Transport Directly

For testing or advanced use cases, you can interact with the MCP server directly via stdio:

'{"jsonrpc":"2.0","id":"2","method":"show","title":"Hello","message":"World"}' | ./notify-mcp.sh

About

A simple Bash JSON-RPC MCP server for sending desktop notifications via notify-send. Supports listing tools and showing notifications with customizable title and message.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages