Labsco
MCP SERVER

Image Extractor MCP

by ifmelate

Get a screenshot, a linked image or a base64 blob in front of the model, downscaled so it does not eat the context budget.

Image Analysis, OCR & VisionVerified
Summary
It exists so a screenshot stops being a dead end — point it at a file, a URL or a blob and the model can actually see the picture.

Everything is resized to at most 512x512 before encoding, which is the whole design: base64 images are expensive in context and this keeps one screenshot from taking the budget. When the detail matters more than the size, raise max_width and max_height on the call.

What it is

A small server that converts images to base64 the model can read. Three tools, one per source: a path on disk, an HTTP or HTTPS URL, or data you already hold.

What you get
  • extract_image_from_file for a screenshot, photo, diagram or scanned document sitting on disk
  • extract_image_from_url for anything reachable over HTTP or HTTPS
  • extract_image_from_base64 for clipboard grabs and generated images, with mime_type defaulting to image/png
  • Automatic downscaling to at most 512x512 before encoding, so one image does not swallow the context window
  • Resize, max_width and max_height on every tool when the default bounds are wrong for the picture
Requirements

Nothing to authorize — no account and no key. Run it with npx -y mcp-image-extractor. Three optional environment variables tune it: MAX_IMAGE_SIZE caps the bytes accepted (default 10485760, which is 10MB), ALLOWED_DOMAINS restricts which hosts URL extraction may fetch from, and PORT sets the port (default 8000) for the alternative of starting the server yourself and pointing a client at http://localhost:8000.

Setup effort

One command — npx -y mcp-image-extractor