使用说明

项目简介

Toast MCP Server 是一个基于 Model Context Protocol (MCP) 构建的后端服务,它专注于提供桌面通知功能。该服务器能够接收来自 MCP 客户端的通知请求,并在 Windows 10 和 macOS 系统上显示原生桌面通知。项目旨在简化 LLM 应用与用户桌面环境的交互,作为一个开箱即用的通知服务 MCP 服务器。

主要功能点

  • 跨平台通知: 支持 Windows 10 (使用 win10toast) 和 macOS (使用 osascript) 桌面通知。
  • MCP 协议支持: 实现了 MCP 协议,能够与任何兼容 MCP 协议的客户端(如 VSCode Cline)进行通信。
  • 多种通知类型: 支持信息 (info)、警告 (warning)、错误 (error)、成功 (success) 等多种通知类型。
  • 可配置服务器: 允许配置服务器监听地址 (host) 和端口 (port)。
  • 简单命令处理: 提供 'show_notification' 命令来显示桌面通知,以及 'list_commands' 命令查看可用命令。

安装步骤

  1. 环境准备: 确保已安装 Python 3.8 或更高版本。
  2. 克隆仓库: 使用 Git 克隆仓库到本地:
    git clone https://github.com/naru-sensei/-toast-mcp-server.git
    cd -toast-mcp-server
  3. 安装依赖: 创建并激活虚拟环境 (可选),然后安装项目依赖:
    python -m venv venv
    source venv/bin/activate  # 或 venv\Scripts\activate for Windows
    pip install -r requirements.txt # 如果 requirements.txt 文件存在,实际仓库中setup.py已包含依赖
    pip install . # 安装当前项目

服务器配置

MCP 客户端需要配置连接到 Toast MCP Server 的信息。以下是一个典型的 JSON 格式配置示例,用于 MCP 客户端 (例如 VSCode Cline):

{
  "servers": [
    {
      "name": "ToastMCP",
      "command": "python",
      "args": [
        "-m",
        "toast_mcp_server.server.connection", // 启动服务器的命令,指向 connection.py 模块
        "--host", "0.0.0.0",                 // (可选) 服务器监听地址,0.0.0.0 允许所有网络接口访问,默认为 127.0.0.1
        "--port", "8000"                    // (可选) 服务器监听端口,默认为 8765
      ]
    }
  ]
}

配置参数注释:

  • '"name"': 服务器名称,在客户端中标识和显示。
  • '"command"': 启动服务器的命令,这里使用 'python'。
  • '"args"': 启动命令的参数列表:
    • '"-m", "toast_mcp_server.server.connection"': 指定以模块方式运行 'toast_mcp_server.server.connection',这是服务器的主入口点。
    • '"--host", "0.0.0.0"': (可选) 设置服务器监听的 IP 地址。'0.0.0.0' 表示监听所有可用的网络接口,允许从任何 IP 地址连接到服务器。如果需要限制为本地访问,可以设置为 '127.0.0.1'。 默认为 '127.0.0.1'。
    • '"--port", "8000"': (可选) 设置服务器监听的端口号。 默认为 '8765'。 确保此端口未被其他程序占用,并且客户端配置中使用的端口号一致。

注意: 实际使用时,请根据你的 Python 环境和网络配置调整 'command' 和 'args' 中的路径和参数。 如果你的 Python 可执行文件不在系统 PATH 中,可能需要提供 Python 可执行文件的完整路径。

基本使用方法

  1. 启动服务器: 在终端中,进入项目根目录,执行以下命令启动服务器:
    python -m toast_mcp_server.server.connection --host 0.0.0.0 --port 8000
    或者简化使用默认配置:
    python -m toast_mcp_server.server.connection
  2. 配置 MCP 客户端: 根据 MCP 客户端 (如 VSCode Cline) 的指引,配置上述 JSON 格式的服务器连接信息。
  3. 发送通知: 在 MCP 客户端中,可以使用 'show_notification' 命令向服务器发送通知请求。服务器接收到请求后,会在运行服务器的操作系统上显示桌面通知。

示例 MCP 客户端请求 (JSON-RPC over TCP):

{"jsonrpc": "2.0", "method": "show_notification", "params": {"title": "来自 MCP 客户端的通知", "message": "这是一个测试通知消息", "type": "info", "duration": 5}, "id": 1}

服务器会返回一个 JSON-RPC 响应,指示通知是否成功显示。

{"jsonrpc": "2.0", "result": {"success": true, "message": "Notification displayed successfully"}, "id": 1}

关键词

桌面通知, 跨平台, 消息服务, MCP工具, 自动化提醒

信息

分类

桌面与硬件