Skip to main content

图片批量格式转换 MCP

一个专门用于批量图片格式转换的模型上下文协议(MCP)服务器。

功能特性

  • 批量图片转换:一次性转换多个图片文件到指定格式
  • 支持多种格式:JPEG、PNG、BMP、TIFF、ICO、WEBP、HEIC/HEIF、AVIF
  • SVG 支持:可将 SVG 矢量图转换为位图格式(使用 PyMuPDF,无需系统依赖)
  • 智能文件管理
    • 自动创建输出文件夹
    • 智能文件命名(避免重复)
    • 跳过已经是目标格式的文件
  • ICO 优化:为 ICO 格式自动生成多分辨率图标
  • 质量控制:支持自定义输出质量和优化选项

安装

使用 uv(推荐)

cd /Users/fjc/Desktop/项目/skills/图片/图片-格式转换
uv pip install -e .

使用 pip

cd /Users/fjc/Desktop/项目/skills/图片/图片-格式转换
pip install -e .

配置

在 MCP 客户端配置文件中添加以下内容:

{
  "mcpServers": {
    "图片批量格式转换": {
      "command": "python",
      "args": [
        "-m",
        "image_batch_converter"
      ],
      "cwd": "/Users/fjc/Desktop/项目/skills/图片/图片-格式转换",
      "env": {}
    }
  }
}

或使用 uvx(如果已发布到 PyPI):

{
  "mcpServers": {
    "图片批量格式转换": {
      "command": "uvx",
      "args": ["image-batch-converter"],
      "env": {}
    }
  }
}

可用工具

batch_convert_images

批量转换图片文件列表为指定格式。

参数:

  • input_files (list, 必需) - 图片文件路径列表
  • target_format (str, 必需) - 目标格式:jpeg, png, webp, heic, avif, bmp, tiff, ico
  • ico_sizes (list, 可选) - ICO 图标尺寸列表,例如 [16, 32, 48, 64, 128, 256]。默认使用智能尺寸选择
  • dpi (int, 可选) - SVG 转换时的 DPI,默认 300
  • svg_backend (str, 可选) - SVG 渲染后端,默认 'auto'(使用 PyMuPDF)
  • quality (int, 可选) - 输出质量 (1-100),仅用于 JPEG/WEBP/HEIF/AVIF,默认使用格式默认值
  • optimize (bool, 可选) - 是否优化文件大小,默认 True

返回:

成功时返回转换结果摘要,包括:

  • 成功转换的文件数量
  • 输出文件夹路径
  • 跳过的文件(如果有)
  • 警告信息(如果有)

失败时返回详细错误信息,包括:

  • 转换成功的文件列表
  • 转换失败的文件列表
  • 错误详情

支持的格式

输入格式

  • JPEG (.jpg, .jpeg)
  • PNG (.png)
  • BMP (.bmp)
  • TIFF (.tif, .tiff)
  • ICO (.ico)
  • WEBP (.webp)
  • HEIC/HEIF (.heic, .heif)
  • AVIF (.avif)
  • SVG (.svg) - 仅作为输入格式

输出格式

  • JPEG (.jpg)
  • PNG (.png)
  • BMP (.bmp)
  • TIFF (.tif)
  • ICO (.ico)
  • WEBP (.webp)
  • HEIC/HEIF (.heic)
  • AVIF (.avif)

使用示例

示例 1:批量转换 PNG 为 JPEG

将以下文件转换为 JPEG 格式:
- /path/to/image1.png
- /path/to/image2.png
- /path/to/image3.png

MCP 将:

  1. 在第一个文件所在目录创建 "Converted Images" 文件夹
  2. 转换所有 PNG 文件为 JPEG
  3. 返回转换结果摘要

示例 2:转换为高质量 WEBP

将以下文件转换为 WEBP 格式,质量设为 95:
- /path/to/photo1.jpg
- /path/to/photo2.jpg
参数:quality=95

示例 3:SVG 转 PNG(高分辨率)

将以下 SVG 文件转换为 PNG,DPI 设为 600:
- /path/to/logo.svg
- /path/to/icon.svg
参数:dpi=600

示例 4:创建多尺寸 ICO 图标

将图片转换为 ICO 格式,包含多个尺寸:
- /path/to/icon.png
参数:ico_sizes=[16, 32, 48, 64, 128, 256]

工作原理

  1. 验证输入:检查所有文件是否存在且可访问
  2. 格式检测:自动检测输入文件格式
  3. 跳过重复:如果文件已经是目标格式,自动跳过
  4. 创建输出文件夹:在第一个文件所在目录创建 "Converted Images" 文件夹(如果已存在则添加数字后缀)
  5. 批量转换:逐个转换图片,并处理以下特殊情况:
    • JPEG:自动移除透明通道
    • ICO:生成多分辨率图标
    • SVG:使用 PyMuPDF 渲染为位图
  6. 错误处理:记录失败的文件,但继续处理其他文件
  7. 返回结果:提供详细的转换结果摘要

系统要求

  • Python 3.10+
  • Pillow (PIL) - 核心图片处理库
  • pillow-heif - HEIC/HEIF/AVIF 支持
  • PyMuPDF - SVG 转换和 PDF 支持
  • mcp - Model Context Protocol SDK

许可证

MIT License

更新日志

版本 1.0.0

  • 初始版本
  • 从 image-format-converter-mcp 提取批量转换功能
  • 支持 9 种输出格式
  • 支持 SVG 输入格式
  • 智能文件管理和错误处理

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcpcn_image_batch_converter-1.0.0.tar.gz (12.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcpcn_image_batch_converter-1.0.0-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

Details for the file mcpcn_image_batch_converter-1.0.0.tar.gz.

File metadata

File hashes

Hashes for mcpcn_image_batch_converter-1.0.0.tar.gz
Algorithm Hash digest
SHA256 cf12fd62ae9ad1361339e24dfa3580d0ee955ce3a98f54d2d15f37b35263e7f7
MD5 dc7ceeeb799e0134b445e02803d6f0b0
BLAKE2b-256 fc66be511f7843b91c2a92f44f82aaa98c776ba8be76034d41610dedf7f5e0f4

See more details on using hashes here.

File details

Details for the file mcpcn_image_batch_converter-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for mcpcn_image_batch_converter-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 15e3fca6fb2edd91802dfe66fb453c22f50e1acb06c5911dbd5e8fdf7c5fb35d
MD5 105388cb694a35e435d9848b9516c2f6
BLAKE2b-256 8e44ed91da9480a7f14747df64e5bff25c71ed34b795861b0d5350b0afebd53a

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page