mcpField
E
exiftool

exiftool

本地服务
github.com/joshmsimpson媒体与设计056 周前更新

关于 exiftool

exiftool 是调用 ExifTool 处理文件元数据的 MCP 服务,适用于需要读取、编辑或清除媒体及文档元数据的工作流。它提供按标签读取、写入时自动备份以及格式清单查询等工具。

主要功能

  1. 01读取 150 多种格式的元数据
  2. 02按指定标签提取信息
  3. 03写入元数据并默认创建备份
  4. 04选择性或全部移除元数据
  5. 05列出支持的文件格式

适用场景

  1. 01查看照片的拍摄时间和相机信息
  2. 02为媒体文件写入作者或版权标签
  3. 03清除照片中的 GPS 位置信息
  4. 04检查 ExifTool 支持的文件格式

MCP 相关

该 MCP 服务将 ExifTool 的读取、写入、移除元数据及格式查询能力提供给 MCP 客户端。通过 stdio 通信,并要求系统已安装 ExifTool。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"joshmsimpson-exiftool": {
"command": "uvx",
"args": [
"exiftool-mcp"
]
}
}
}
启动命令uvx exiftool-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypiexiftool-mcp0.1.6

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MCP ExifTool 服务

mcp-name: io.github.joshmsimpson/exiftool

一个 MCP(Model Context Protocol)服务,可通过 ExifTool 读取、写入和移除多种文件类型的元数据。

功能

  • 读取元数据:支持 150 多种文件格式
  • 写入元数据:写入文件并自动创建备份
  • 移除元数据:有选择地或完全移除文件中的元数据
  • 提取特定标签或检索所有可用元数据
  • 支持多种元数据标准:EXIF、IPTC、XMP、GPS 和制造商专用格式
支持的文件格式

图像格式:

  • RAW 相机格式:ARW、CR2、CR3、CRW、DNG、ERF、FFF、GPR、IIQ、K25、KDC、MEF、MRW、NEF、NRW、ORF、PEF、RAF、RAW、RW2、RWL、SR2、SRF、SRW、X3F
  • 栅格图像:BMP、FLIF、GIF、HDR、HEIC、HEIF、JPEG、JPEG 2000、JXL、JXR、PCX、PGF、PNG、PPM、TIFF、WebP
  • 专用图像:AVIF、BPG、DPX、EXR、FITS、FLIR、FPX、ICO、LFP、MIFF、PSD、PSP、QTIF、SVG

视频格式:

  • 容器格式:3GP、AVI、F4V、FLV、GLV、M2TS、MOV、MP4、MKV、MPEG、R3D、VOB、WebM、WTV
  • 其他视频格式:DV、DVR-MS、INSV、LRV、MQV

音频格式:

  • 无损:AIFF、FLAC、LA、OFR、PAC、WAV、WV
  • 有损:AAC、APE、DSF、M4A、MP3、MPC、OGG、OPUS、RA、WMA

文档格式:

  • 办公文档:DOC、DOCX、XLSX、PPTX、XLS、KEY、NUMBERS、PAGES
  • 其他文档:PDF、EPS、RTF、TXT、XML、JSON
  • 电子书:EPUB、MOBI、AZW

归档格式:

  • 7z、GZ、RAR、ZIP

其他格式:

  • 字体:AFM、OTF、PFA、TTF
  • 以及更多专用格式

前置条件

必须在系统上安装 ExifTool。 此 MCP 服务是一个调用 ExifTool 命令行工具的封装程序。

安装 ExifTool

macOS:

brew install exiftool

Ubuntu/Debian:

sudo apt-get install libimage-exiftool-perl

Windows: 从 https://exiftool.org/ 下载

验证安装:

exiftool -ver

安装

pip install exiftool-mcp

使用方法

在 Claude Desktop 中使用

将以下内容添加到 claude_desktop_config.json:

{
  "mcpServers": {
    "exiftool": {
      "command": "exiftool-mcp"
    }
  }
}
在其他 MCP 客户端中使用

该服务通过 stdio 通信,并遵循 Model Context Protocol 规范。

可用工具

read_metadata

使用 ExifTool 读取文件的元数据。

参数:

  • file_path(必需):文件路径(绝对路径或相对路径)
  • tags(可选):要提取的特定元数据标签数组(例如,["DateTimeOriginal", "Make", "Model"])

示例:

{
  "file_path": "/path/to/image.jpg",
  "tags": ["DateTimeOriginal", "Make", "Model", "GPSLatitude", "GPSLongitude"]
}
write_metadata

使用 ExifTool 写入或更新文件中的元数据标签。默认会创建备份。

参数:

  • file_path(必需):文件路径(绝对路径或相对路径)
  • tags(必需):要写入的元数据标签字典(例如,{"Artist": "John Doe", "Copyright": "2025"})
  • overwrite_original(可选):若为 true,则覆盖原始文件而不创建备份。默认值为 false。

示例:

{
  "file_path": "/path/to/image.jpg",
  "tags": {
    "Artist": "John Doe",
    "Copyright": "2025",
    "Comment": "Beautiful sunset"
  },
  "overwrite_original": false
}
remove_metadata

使用 ExifTool 移除文件中的元数据。可以移除所有元数据或指定标签。

参数:

  • file_path(必需):文件路径(绝对路径或相对路径)
  • tags(可选):要移除的特定元数据标签数组(例如,["GPS*", "Comment"])。若未指定,则移除所有元数据。
  • overwrite_original(可选):若为 true,则覆盖原始文件而不创建备份。默认值为 false。

示例:

{
  "file_path": "/path/to/image.jpg",
  "tags": ["GPS*", "Location*"],
  "overwrite_original": false
}
list_supported_formats

列出 ExifTool 支持的所有文件格式。

**参数:**无

示例

读取图像中的所有元数据
Use the read_metadata tool with file_path: "photo.jpg"
读取特定 EXIF 标签
Use the read_metadata tool with:
- file_path: "photo.jpg"
- tags: ["DateTimeOriginal", "Make", "Model", "LensModel"]
向文件写入元数据
Use the write_metadata tool with:
- file_path: "photo.jpg"
- tags: {"Artist": "Jane Smith", "Copyright": "2025", "Rating": "5"}
从照片中移除 GPS 数据
Use the remove_metadata tool with:
- file_path: "photo.jpg"
- tags: ["GPS*"]
移除文件中的所有元数据
Use the remove_metadata tool with:
- file_path: "photo.jpg"
(no tags specified removes all metadata)
查看支持的格式
Use the list_supported_formats tool

开发

设置
git clone https://github.com/joshmsimpson/exiftool_mcp.git
cd exiftool_mcp
pip install -e .
在本地运行
python -m exiftool_mcp.server

许可证

MIT

贡献

欢迎贡献!欢迎提交 Pull Request。

Links

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。