Skip to main content
Glama

MCP Image Extractor

MCP server for extracting and converting images to base64 for LLM analysis.

This MCP server provides tools for AI assistants to:

  • Extract images from local files

  • Extract images from URLs

  • Process base64-encoded images

How it looks in Cursor:

Suitable cases:

  • analyze playwright test results: screenshots

Installation

The recommended way to install this MCP server is using npx directly in your .cursor/mcp.json file:

{
  "mcpServers": {
    "image-extractor": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-image-extractor"
      ]
    }
  }
}

This approach:

  • Automatically installs the latest version

  • Does not require global installation

  • Works reliably across different environments

Alternative: Local Path Installation

If you prefer to use a local installation of the package, you can clone the repository and point to the built files:

{
  "mcpServers": {
    "image-extractor": {
      "command": "node",
      "args": ["/full/path/to/mcp-image-extractor/dist/index.js"],
      "disabled": false
    }
  }
}

Manual Installation

# Clone and install 
git clone https://github.com/ifmelate/mcp-image-extractor.git
cd mcp-image-extractor
npm install
npm run build
npm link

This will make the mcp-image-extractor command available globally.

Then configure in .cursor/mcp.json:

{
  "mcpServers": {
    "image-extractor": {
      "command": "mcp-image-extractor",
      "disabled": false
    }
  }
}

Troubleshooting for Cursor Users: If you see "Failed to create client" error, try the local path installation method above or ensure you're using the correct path to the executable.

Related MCP server: MCP URL Fetcher

Available Tools

extract_image_from_file

Extracts an image from a local file and converts it to base64.

Parameters:

  • file_path (required): Path to the local image file

Note: All images are automatically resized to optimal dimensions (max 512x512) for LLM analysis to limit the size of the base64 output and optimize context window usage.

extract_image_from_url

Extracts an image from a URL and converts it to base64.

Parameters:

  • url (required): URL of the image to extract

Note: All images are automatically resized to optimal dimensions (max 512x512) for LLM analysis to limit the size of the base64 output and optimize context window usage.

extract_image_from_base64

Processes a base64-encoded image for LLM analysis.

Parameters:

  • base64 (required): Base64-encoded image data

  • mime_type (optional, default: "image/png"): MIME type of the image

Note: All images are automatically resized to optimal dimensions (max 512x512) for LLM analysis to limit the size of the base64 output and optimize context window usage.

Example Usage

Here's an example of how to use the tools from Claude:

Please extract the image from this local file: images/photo.jpg

Claude will automatically use the extract_image_from_file tool to load and analyze the image content.

Please extract the image from this URL: https://example.com/image.jpg

Claude will automatically use the extract_image_from_url tool to fetch and analyze the image content.

Docker

Build and run with Docker:

docker build -t mcp-image-extractor .
docker run -p 8000:8000 mcp-image-extractor

License

MIT

Available Tools

3 tools
extract_image_from_base64A

Extract and analyze images from base64-encoded data. Ideal for processing screenshots from clipboard, dynamically generated images, or images embedded in applications without requiring file system access.

Inputs: base64 (required), max_height, max_width, mime_type, +1 more.

extract_image_from_fileA

Extract and analyze images from local file paths. Supports visual content understanding, OCR text extraction, and object recognition for screenshots, photos, diagrams, and documents.

Inputs: file_path (required), max_height, max_width, resize.

extract_image_from_urlA

Extract and analyze images from web URLs. Perfect for analyzing web screenshots, online photos, diagrams, or any image accessible via HTTP/HTTPS for visual content analysis and text extraction.

Inputs: url (required), max_height, max_width, resize.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.2/5.0

    Scored across 3 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose based on the source of the image: base64-encoded data, local file paths, and web URLs. The descriptions reinforce this by specifying different use cases (e.g., clipboard screenshots, local files, online images), leaving no ambiguity for an agent to misselect.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern with 'extract_image_from_' as a prefix, followed by the source type (base64, file, url). This predictable naming scheme makes it easy for agents to understand and navigate the tool set without confusion.

    Tool Count5/5

    With 3 tools, the server is well-scoped for its purpose of extracting images from different sources. Each tool earns its place by covering a distinct input method (base64, file, URL), providing a complete set for the domain without being overly sparse or bloated.

    Completeness5/5

    The tool surface is complete for the domain of image extraction, covering all major input sources: base64 data, local files, and web URLs. There are no obvious gaps, as these three methods encompass the typical ways images are accessed in applications, ensuring agents can handle various scenarios without dead ends.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers