项目简介

Claude 桌面通知服务器是一个轻量级的 MCP (Model Context Protocol) 服务器,专为 macOS 上的 Claude 桌面应用程序设计。它通过声音和视觉通知,让用户及时了解 Claude 的工作状态,例如在 Claude 开始处理请求和完成任务时发出提醒。

主要功能点

  • 声音通知: 在 Claude 开始响应和完成任务时播放不同的系统声音,声音可自定义。
  • 视觉通知: 通过 macOS 通知中心发送桌面通知,支持自定义图标。
  • 易于安装和配置: 安装步骤简单,依赖性小。
  • 多种通知方式: 支持 PyObjC, pync, AppleScript, terminal-notifier 多种视觉通知方式,并提供自动回退机制,确保通知的可靠性。
  • 可定制性: 允许用户通过环境变量自定义通知声音和视觉效果。

安装步骤

  1. 克隆仓库:

    git clone https://github.com/charles-adedotun/notifications-mcp-server.git
    cd notifications-mcp-server
  2. 使服务器脚本可执行:

    chmod +x notification_server.py
  3. 安装 uv (如果未安装):

    # 使用 curl
    curl -LsSf https://astral.sh/uv/install.sh | sh
    
    # 或使用 Homebrew
    brew install uv
  4. 使用 uv 安装依赖:

    # 安装 fastmcp 库
    uv pip install fastmcp
    
    # 安装视觉通知库 (选择其中一个)
    uv pip install pyobjc-core pyobjc-framework-Cocoa  # 推荐
    # 或
    uv pip install pync  # 备选方案
    
    # 可选: 安装 terminal-notifier 作为备用通知方式
    brew install terminal-notifier
  5. 注册 MCP 服务器:

    fastmcp install notification_server.py
  6. 配置 Claude 桌面应用:

    编辑 Claude 的配置文件 'claude_desktop_config.json' (通常位于 '~/Library/Application\ Support/Claude/'),在 'mcpServers' 部分添加以下配置:

    "mcpServers": [
      {
        "name": "Claude Notifications",
        "command": "/usr/bin/python3",
        "args": ["/full/path/to/notification_server.py"],
        "autoStart": true
      }
    ]

    配置参数说明:

    • '"name"': 服务器名称,可以自定义,例如 "Claude Notifications"。
    • '"command"': Python3 解释器的路径,通常为 '/usr/bin/python3'。
    • '"args"': 服务器脚本的路径,需要替换为 'notification_server.py' 的完整路径,例如 '["/Users/yourusername/notifications-mcp-server/notification_server.py"]'。
    • '"autoStart"': 设置为 'true' 表示 Claude 桌面应用启动时自动启动此 MCP 服务器。

    注意:

    • 如果 'mcpServers' 数组已存在,只需将新的服务器配置对象添加到数组中。
    • 请将 '/full/path/to/notification_server.py' 替换为 'notification_server.py' 脚本在您电脑上的实际完整路径。
  7. 重启 Claude 桌面应用

  8. 测试通知:

    python3 test_notification.py

    运行此命令测试各种通知方法,并帮助诊断问题。

基本使用方法

安装配置完成后,当您在 Claude 桌面应用中与 Claude 进行对话时,服务器会在 Claude 开始处理请求和完成任务时自动发送声音和视觉通知。您无需进行额外的操作,通知服务器会在后台运行并与 Claude 桌面应用协同工作。

自定义通知

您可以通过设置环境变量来自定义通知的声音和视觉效果,例如:

  • 'CLAUDE_START_SOUND': 自定义 Claude 开始处理任务时的声音文件路径(.aiff 格式)。
  • 'CLAUDE_COMPLETE_SOUND': 自定义 Claude 完成任务时的声音文件路径(.aiff 格式)。
  • 'CLAUDE_VISUAL_NOTIFICATIONS': 设置为 'false' 可以禁用视觉通知。
  • 'CLAUDE_NOTIFICATION_ICON': 自定义视觉通知的图标文件路径(.png, .icns 等)。

详细的自定义方法和可用的系统声音列表请参考仓库 README 文档。

信息

分类

桌面与硬件