使用说明
项目简介
'exif-mcp' 是一个遵循 Model Context Protocol (MCP) 的服务器,专注于图片元数据的提取。它利用卓越的 'exifr' 库,支持多种常见的图片格式(如 JPEG, PNG, TIFF, HEIC/AVIF),并能从文件、URL 或 Base64 数据中读取图片。其主要特点是完全离线工作且无需依赖外部图片处理工具,提供了快速、高效和安全的元数据获取能力。
主要功能点
- 多种图片格式支持: 能够处理 JPEG, TIFF, HEIC/AVIF, PNG 等格式的图片文件。
- 丰富的元数据提取: 支持提取 EXIF, GPS, XMP, ICC, IPTC, JFIF, IHDR 等多种类型的元数据段。
- 灵活的图片源: 可以从本地文件路径、网络 URL (http, https, file://) 或 Base64 编码的图片数据加载图片。
- 专业的元数据工具: 提供了一系列专门的工具,用于获取图片朝向 (Orientation)、旋转信息、GPS 坐标以及嵌入的缩略图。
- 完全离线运行: 整个元数据提取过程在本地完成,不依赖任何远程网络服务或外部工具,确保隐私和效率。
安装步骤
要安装并运行 'exif-mcp' 服务器,请按照以下步骤操作:
- 克隆仓库:
git clone https://github.com/stass/exif-mcp.git - 进入项目目录:
cd exif-mcp - 安装依赖:
npm install - 构建项目:
npm run build
构建成功后,可执行文件将位于 'dist' 目录下。
MCP客户端配置
'exif-mcp' 服务器使用 STDIO 传输协议。要将其与 MCP 客户端连接,您需要在客户端的配置中添加对该服务器的引用。典型的 MCP 客户端配置(例如 'claude_desktop_config.json' 或其他客户端配置)需要指定服务器的名称、启动命令及其参数。
通常的配置信息如下:
- 服务器名称 ('server name'): 'exif-mcp'
- 启动命令 ('command'): 用于执行 Node.js 脚本的命令,通常是 'node'
- 参数 ('args'): 传递给 'command' 的参数列表,指定服务器脚本的位置,例如:'/path/to/exif-mcp/dist/server.js' (请将 '/path/to/exif-mcp/' 替换为您实际克隆仓库的路径)。
根据您使用的 MCP 客户端,配置格式可能有所不同,但核心信息是提供 'node' 命令和指向 'dist/server.js' 的完整路径。
基本使用方法
安装并配置客户端后,您可以启动服务器并通过客户端与之交互:
- 启动服务器:
在项目根目录执行:
服务器将启动并监听 STDIO 连接。npm start - 连接客户端: 启动您的 MCP 客户端(如 Claude Desktop 或 MCP Inspector),它应能检测并连接到已配置的 'exif-mcp' 服务器。
- 调用工具:
通过 MCP 客户端界面或命令行调用 'exif-mcp' 提供的工具。例如,要读取一个本地图片的 EXIF 数据,您可以使用 'read-exif' 工具,并提供图片路径作为参数:
- 工具名称: 'read-exif'
- 工具参数示例:
{ "image": { "kind": "path", "path": "/path/to/your/image.jpg" } }
详细的工具列表及其参数定义,请参考仓库的 'README.md' 文件或通过 MCP 客户端的能力发现功能查看。
信息
分类
数据库与文件