WebP批处理转换器
一种模型上下文协议(MCP)服务器,用于将图像批量转换为具有跨平台支持的WebP格式。与Cursor等支持MCP的IDE无缝协作。
🌟 特性
- 🖼️ 批量转换 将PNG、JPG和JPEG文件转换为WebP
- 🌍 跨平台 支持(macOS、Linux、Windows)
- ⚡ 线程 快速转换处理
- 🎛️ 灵活的选择 包括质量控制、无损模式和元数据保存
- 📊 详细报告 具有文件大小和节省统计信息
- 🔧 双引擎支持 -更喜欢谷歌的cwebp,转而支持夏普
- 🎯 MCP集成 用于人工智能驱动的开发环境
📦 安装
全球安装
npm install -g webp-batch-mcp地方发展
git clone https://github.com/mhe8mah/webp-batch-mcp.git
cd webp-batch-mcp
npm install
npm run build码头工人
docker build -t webp-batch .
docker run -v /path/to/images:/data webp-batch🚀 用法
命令行接口
node dist/cli.js [options]选项
--src-要扫描的源目录(默认:当前目录)--quality-WebP质量设置(默认值:75)--lossless-使用无损编码(建议用于PNG)--overwrite-用WebP版本替换原始文件--threads-并发转换数(默认值:CPU计数)--preserve-meta-保留EXIF和ICC元数据--flat-将所有WebP文件输出到指定目录
例子
# Convert all images in current directory
node dist/cli.js
# High quality conversion of specific directory
node dist/cli.js --src ./photos --quality 95 --preserve-meta
# Lossless conversion with overwrite
node dist/cli.js --src ./images --lossless --overwrite
# Batch process to output directory
node dist/cli.js --src ./input --flat ./output --threads 8MCP服务器
MCP服务器公开了一个工具: convert_to_webp
刀具参数
{
"src": "string", // Source directory (default: ".")
"quality": "number", // Quality 0-100 (default: 75)
"lossless": "boolean", // Lossless mode (default: false)
"overwrite": "boolean", // Replace originals (default: false)
"threads": "number", // Concurrent threads (default: CPU count)
"preserveMeta": "boolean", // Keep metadata (default: false)
"flat": "string" // Output directory (optional)
}⚙️ 如何在游标中添加此服务器
- 克隆并构建项目:
git clone https://github.com/mhe8mah/webp-batch-mcp.git
cd webp-batch-mcp
npm install
npm run build- 打开光标设置
- 引导到 特性 → 主控程序
- 添加新的服务器配置:
{
"mcpServers": {
"webp-batch": {
"command": "node",
"args": ["/path/to/webp-batch-mcp/dist/server.js"]
}
}
}- 重新启动游标
- 这
convert_to_webp该工具将在您的AI对话中可用
🔧 技术细节
转换策略
- 主发动机:谷歌
cwebp工具(包含在libwebp工具中)
- 最快的性能 - 最佳压缩 - 全功能支持
- 后备发动机:Sharp(Node.js)
- 纯JavaScript实现 - 无外部依赖关系 - 跨平台兼容性
输出行为
- 默认:创建
.webp原件旁边的文件 - 覆盖模式:用WebP版本替换原件
- 平面模式:将所有WebP文件输出到指定目录
- 元数据保存:应要求维护EXIF和ICC配置文件
演出
- 默认情况下使用所有CPU内核
- 使用p-limit同时处理图像
- 提供实时进度反馈
- 报告详细的转换统计数据
🛠️ 发展
建筑
npm run build测试
npm test开发模式
npm run dev📊 测试结果
用真实的网络图片验证:
- JPEG(35KB→ 17KB):节省51%的空间
- PNG(7.9KB)→ 2.8KB):节省65%的空间
- 总体:平均压缩53%
📋 依赖项
运行时
@modelcontextprotocol/sdk-MCP服务器框架sharp-图像处理回退chalk-彩色终端输出commander-CLI参数解析glob-文件模式匹配p-limit-并发控制
发展
typescript-类型安全tsup-快速TypeScript打包器jest-测试框架
📄 许可证
MIT许可证-有关详细信息,请参阅许可证文件。
🤝 贡献
- 分叉存储库
- 创建要素分支
- 添加新功能的测试
- 确保所有测试通过
- 提交拉取请求
🆘 支持
有关问题和功能请求,请使用 .
