使用说明
项目简介
桌面图片管理器 MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的应用后端,旨在为 LLM 客户端提供桌面图片相关的上下文信息和操作能力。通过集成此服务器,LLM 应用可以方便地获取桌面图片数量、列表,并调用图片压缩工具,从而实现更智能的图片管理和处理功能。
主要功能点
- 统计桌面图片数量:快速获取当前桌面上的图片文件总数,方便 LLM 了解桌面图片概况。
- 获取桌面图片列表:列出桌面所有图片文件的名称,使 LLM 可以选择特定图片进行后续操作。
- 图片压缩:支持对桌面图片进行压缩,减小文件大小,优化存储空间和传输效率。支持自定义压缩质量,平衡图片质量和文件大小的需求。
安装步骤
- 克隆仓库
git clone https://github.com/zhixiaoqiang/desktop-image-manager cd desktop-image-manager - 安装依赖
确保已安装 Node.js (>= 16) 和 pnpm (>= 8)。然后运行:
pnpm install - 构建项目
pnpm build
服务器配置
MCP 客户端需要配置以下信息以连接到桌面图片管理器 MCP 服务器。配置信息为 JSON 格式:
{ "serverName": "desktop-image-manager", // MCP 服务器名称,与server.ts中server的name属性一致 "command": "pnpm", // 启动服务器的命令,这里使用 pnpm "args": ["start"] // 启动命令的参数,这里使用 start 脚本启动构建后的服务器 }
参数注释:
- 'serverName': MCP 服务器的唯一标识名称,用于客户端识别和连接。
- 'command': 运行服务器端程序的可执行命令。通常是 Node.js 环境下的 'node' 或包管理器如 'pnpm' 或 'npm'。
- 'args': 传递给 'command' 的参数数组,用于指定具体的启动脚本或文件。'["start"]' 表示执行 'package.json' 中定义的 'start' 脚本,该脚本通常会运行构建后的服务器程序。
基本使用方法
-
启动服务器:按照上述服务器配置,在 MCP 客户端中配置并启动 "桌面图片管理器" 服务器。服务器将在后台运行,并通过 Stdio 协议与客户端通信。
-
调用工具:在 LLM 应用中,可以使用 MCP 客户端 SDK 调用服务器提供的工具,例如:
- 统计桌面图片数量: 调用 'count-desktop-images' 工具,无需参数。
- 获取图片列表: 调用 'list-desktop-images' 工具,无需参数。
- 压缩图片: 调用 'compress-image' 工具,需要指定 'fileName' (要压缩的图片文件名)、可选参数 'quality' (压缩质量,1-100,默认80) 和 'outputName' (输出文件名,可选)。
具体工具调用方式请参考仓库 README.md 中的 "MCP 工具使用说明" 章节,以及 MCP 客户端 SDK 的文档。
示例 (以下为 MCP 客户端调用工具的伪代码示例,MCP 客户端无需关注代码细节,只需根据服务器提供的工具名称和参数进行调用):
// 假设 client 是已连接到 MCP 服务器的客户端实例 // 统计桌面图片数量 await client.callTool({ name: "count-desktop-images" }); // 获取图片列表 await client.callTool({ name: "list-desktop-images" }); // 压缩图片 (压缩质量为 75,输出文件名自动生成) await client.callTool({ name: "compress-image", arguments: { fileName: "example.jpg", quality: 75 } }); // 压缩图片 (使用默认压缩质量,自定义输出文件名) await client.callTool({ name: "compress-image", arguments: { fileName: "another-example.png", outputName: "compressed-image.png" } });
通过以上步骤,LLM 应用即可利用桌面图片管理器 MCP 服务器提供的功能,实现对桌面图片的智能管理和操作。
信息
分类
桌面与硬件