使用说明
项目简介
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' 命令查看可用命令。
安装步骤
- 环境准备: 确保已安装 Python 3.8 或更高版本。
- 克隆仓库: 使用 Git 克隆仓库到本地:
git clone https://github.com/naru-sensei/-toast-mcp-server.git cd -toast-mcp-server - 安装依赖: 创建并激活虚拟环境 (可选),然后安装项目依赖:
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 可执行文件的完整路径。
基本使用方法
- 启动服务器: 在终端中,进入项目根目录,执行以下命令启动服务器:
或者简化使用默认配置:python -m toast_mcp_server.server.connection --host 0.0.0.0 --port 8000python -m toast_mcp_server.server.connection - 配置 MCP 客户端: 根据 MCP 客户端 (如 VSCode Cline) 的指引,配置上述 JSON 格式的服务器连接信息。
- 发送通知: 在 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工具, 自动化提醒
信息
分类
桌面与硬件