Skip to main content
Glama

mcp-ding

MCP server for macOS native notifications with AI brand icons.

Send desktop notifications from any MCP-compatible AI agent with one-line tool calls — complete with 67 AI/Agent brand icons and system sound support.


Quick Start

npx -y mcp-ding

Or just tell your AI agent:

Install mcp-ding from https://github.com/zhuqingyv/mcp-notify and set it up as an MCP server.

The agent will clone the repo, install dependencies, register the MCP server, and configure permissions automatically.


Related MCP server: Notifications MCP Server

Features

  • send_notification — Send macOS native notifications via terminal-notifier, with title, subtitle, sound, and icon

  • list_icons — List all 67 available AI brand icons

  • list_sounds — List all macOS system sounds

  • 67 AI brand icons — Covers major providers (Anthropic, OpenAI, Google, DeepSeek, Kimi, and more)

  • Cross-Mac compatible — Dynamic terminal-notifier path detection for both Apple Silicon and Intel Macs


Screenshots / Preview

Coming soon


Prerequisites

  • Node.js 18+

  • terminal-notifier

brew install terminal-notifier

Installation

npx -y mcp-ding

Manual

git clone https://github.com/zhuqingyv/mcp-notify.git
cd mcp-notify
npm install

Setup

Universal MCP config (Cursor, Windsurf, Cline, and others)

Add to your MCP client's config file:

{
  "mcpServers": {
    "mcp-ding": {
      "command": "npx",
      "args": ["-y", "mcp-ding"]
    }
  }
}

Claude Code

claude mcp add mcp-ding -s user -- npx -y mcp-ding

Pre-authorize tools (Claude Code only — skip confirmation prompts)

Add to ~/.claude/settings.json under permissions.allow:

"mcp__mcp-ding__send_notification",
"mcp__mcp-ding__list_sounds",
"mcp__mcp-ding__list_icons"

Other MCP clients manage tool permissions through their own UI or config — this step is Claude Code-specific.


Usage

Send a notification

Send a notification: task complete

Send a notification with an icon

Send a notification with the openai icon: code review done

Equivalent tool call:

{
  "tool": "send_notification",
  "arguments": {
    "title": "Claude Code",
    "message": "Code review done",
    "icon": "openai",
    "sound": "Hero"
  }
}

List available icons

List all available notification icons

Calls list_icons — returns all icon names (without .png extension).

List available sounds

What notification sounds are available?

Calls list_sounds — returns system sound names usable in the sound parameter.


Available Icons

67 icons total. All are 128×128 PNG with brand color background and white label.

International Providers (37)

Icon name

Provider

Product

claude

Anthropic

Claude

openai

OpenAI

ChatGPT / GPT

gemini

Google

Gemini

google-ai-studio

Google

Google AI Studio

meta-ai

Meta

LLaMA / Meta AI

copilot

Microsoft

Copilot

azure-openai

Microsoft

Azure OpenAI

grok

xAI

Grok

mistral

Mistral AI

Mistral

cohere

Cohere

Command / Coral

perplexity

Perplexity AI

Perplexity

stability-ai

Stability AI

Stable Diffusion

midjourney

Midjourney

Midjourney

cursor

Cursor

Cursor

replit

Replit

Replit

github-copilot

GitHub

GitHub Copilot

amazon-bedrock

Amazon

Bedrock

amazon-q

Amazon

Amazon Q

apple-intelligence

Apple

Apple Intelligence

hugging-face

Hugging Face

Hugging Face

runway

Runway

Runway ML

elevenlabs

ElevenLabs

ElevenLabs

suno

Suno

Suno

pi-ai

Inflection AI

Pi

character-ai

Character.AI

Character.AI

pika

Pika Labs

Pika

kling

Kling AI

Kling

groq

Groq

Groq

together-ai

Together AI

Together AI

replicate

Replicate

Replicate

ai21

AI21 Labs

Jamba / Jurassic

aleph-alpha

Aleph Alpha

Luminous

nvidia

Nvidia

Nvidia AI / NIM

luma-ai

Luma AI

Dream Machine

adobe-firefly

Adobe

Adobe Firefly

notion-ai

Notion

Notion AI

grammarly

Grammarly

Grammarly AI

Chinese Providers (25)

Icon name

Provider

Product

ernie-bot

百度

文心一言 / ERNIE Bot

qwen

阿里巴巴

通义千问 / Qwen

doubao

字节跳动

豆包 / Doubao

coze

字节跳动

Coze (扣子)

zhipu

智谱AI

GLM / ChatGLM

kimi

Moonshot AI

Kimi

deepseek

DeepSeek

DeepSeek

yi-ai

01.AI

Yi 系列

minimax

MiniMax

海螺AI

baichuan

百川智能

Baichuan

tiangong

昆仑万维

天工AI

sensenova

商汤科技

日日新 / SenseNova

xunfei-spark

科大讯飞

星火 / Spark

hunyuan

腾讯

混元 / Hunyuan

step-ai

阶跃星辰

Step

tencent-yuanbao

腾讯

元宝

youdao-ai

网易有道

有道AI

360-ai

360

智脑 / 360AI

pangu

华为

盘古大模型

xiaomi-ai

小米

小爱同学 / MiAI

sogou-ai

搜狗/腾讯

搜狗AI

zidong-taichi

中科院

紫东太初

mobvoi

出门问问

序列猴子

characterglm

聆心智能

CharacterGLM

xverse

光年之外

元象 XVERSE

AI Dev Tools & Platforms (5)

Icon name

Provider

Product

langchain

LangChain

LangChain

llamaindex

LlamaIndex

LlamaIndex

wandb

Weights & Biases

W&B / Wandb

vercel-ai

Vercel

Vercel AI SDK

supabase-ai

Supabase

Supabase AI


Adding Custom Icons

Place any 128×128 PNG in the icons/ directory. The filename (without .png) becomes the icon name usable in the icon parameter.

cp my-icon.png /path/to/mcp-notify/icons/my-icon.png
# then use: "icon": "my-icon"

To regenerate all built-in icons from scratch:

python3 gen_icons.py

Notification Hook Integration

Auto-notify when Claude finishes a task. Add to ~/.claude/settings.json:

{
  "hooks": {
    "Notification": [{
      "matcher": "",
      "hooks": [{
        "type": "command",
        "command": "bash -c 'MSG=$(cat); TITLE=$(echo \"$MSG\" | python3 -c \"import sys,json; d=json.load(sys.stdin); print(d.get(\\\"title\\\",\\\"Claude Code\\\"))\" 2>/dev/null || echo \"Claude Code\"); BODY=$(echo \"$MSG\" | python3 -c \"import sys,json; d=json.load(sys.stdin); print(d.get(\\\"message\\\",\\\"Done\\\"))\" 2>/dev/null || echo \"Done\"); terminal-notifier -title \"$TITLE\" -message \"$BODY\" -sound Hero -group claude-notify'"
      }]
    }]
  }
}

License

MIT

F
license - not found
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/zhuqingyv/mcp-notify'

If you have feedback or need assistance with the MCP directory API, please join our Discord server