npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

exiftool-mcp-ai-agent

v1.0.8

Published

An MCP Server for retrieving EXIF data from images (photos) and videos using ExifTool

Readme

exiftool-mcp-server

This is an MCP Server (an MCP protocol compatible AI agent) for retrieving EXIF data from images (photos) and videos, using ExifTool. This agent was tested with MCP Inspector and Claude Desktop.

Note: the exiftool copyright belongs to its author, and not to the creators of this AI agent.

Table of Contents

Description

This project provides a command-line/stdio transport MCP (Model Context Protocol) server that allows clients to retrieve EXIF metadata from image and video files by safely executing the exiftool command with specified arguments. It listens for JSON requests on standard input and returns the EXIF data as JSON responses on standard output.

Dependencies

  1. Ensure you have Node.js installed (version 14 or higher recommended).
  2. Install ExifTool on your system. This tool is required for extracting metadata.

Supported MCP Tools:

  • EXIF_all_or_some: Return all or some EXIF properties. If optionalExifTags are not supplied, return all. The optionalExifTags parameter is an optional array of strings representing EXIF property names to return.

  • EXIF_location: Return GPS-related EXIF metadata.

  • EXIF_timestamp: Return timestamp-related EXIF metadata.

  • EXIF_location_and_timestamp: Return both GPS and timestamp EXIF metadata.

The server listens for JSON-RPC 2.0 requests on stdin.

Usage

Testing with Claude Desktop

When Using Npmjs.org Package

Use the following entry in the ~/Library/Application Support/Claude/claude_desktop_config.json

"Exiftool-agent": {
  "command": "npx",
  "args": [
    "-y",
    "exiftool-mcp-ai-agent"
  ]
}

When Code Cloned from GitHub Locally

Use the following development-time entry, in case you have cloned the source code, in Claude's ~/Library/Application Support/Claude/claude_desktop_config.json (with appropriate repo path change):

"Exiftool-agent": {
  "command": "sh",
  "args": [
    "-c",
    "cd ~/Projects/AI/exiftool-mcp-server && npx node --loader ts-node/esm --no-warnings src/index.ts"
  ]
}

Claude Desktop Integration View

Claude Desktop with Exit tool agent

Testing Locally With MCP Inspector

Prerequisites

Before testing with the MCP Inspector, ensure the following are installed:

Testing With MCP Inspector

  1. Clone the github repo at https://github.com/vgribok/exiftool-mcp-server.git.

  2. In the repo root, run npm install.

  3. Start debugging the MCP Inspector in VSCode using the "MCP Inspector with TypeScript Server" launch configuration.

  4. In the integrated terminal, watch for output lines containing:

    Open inspector with token pre-filled:
       http://localhost:6274/?MCP_PROXY_AUTH_TOKEN=...

If the launch.json has auth disabled, then simple point the browser to the http://localhost:6274/, and not to the 127.0.0.1, to work around what seems to be a bug in MCP Inspector (or MCP Proxy).

  1. Click the Connect button in the MCP Inspector UI to connect to your MCP server.

  2. Once connected, click the List Tools button to discover all available tools provided by the server.

MCP Inspector: List Tools

  1. Select a tool from the list to view its input parameters and metadata.

  2. Use the UI to send test requests to the selected tool and observe the responses.

MCP Inspector: tool call

  1. Experiment with different parameters to explore the capabilities of the MCP server.

Contribution Guidelines

Contributions are welcome! Please follow these steps:

  1. Fork the repository.
  2. Create a new branch for your feature or bugfix.
  3. Make your changes and commit with clear messages.
  4. Submit a pull request describing your changes.

Please ensure your code follows existing style and includes appropriate error handling.

Security Considerations

  • The server disallows shell metacharacters such as ;, &, |, `, $, >, <, and \ to prevent command injection attacks.
  • Always ensure that the input to the server is from trusted sources.

License

This project is licensed under the ISC License. See the LICENSE file for details.

Author

Vlad Hrybok