mcpField
M
MCP Server - Image

MCP Server - Image

Local
github.com/IA-ProgrammingMedia & Design21Updated 67w ago

About MCP Server - Image

MCP Server - Image is an MCP server that fetches and processes images from URLs, local file paths and numpy arrays. Its fetch_images tool returns images as base64 strings with MIME types, suiting applications and data pipelines that pass images to AI models.

Key features

  1. 01Fetch images from HTTP and HTTPS URLs
  2. 02Load images from local file paths
  3. 03Compress images larger than 1MB
  4. 04Process multiple images in parallel

Use cases

  1. 01Let an AI model read images from web URLs or local files
  2. 02Batch process images for data processing pipelines

MCP support

This project is an MCP server that returns base64-encoded images and their MIME types to MCP clients through the fetch_images tool.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

MCP Server - Image

A Model Context Protocol (MCP) server that provides tools for fetching and processing images from URLs, local file paths, and numpy arrays. The server includes a tool called fetch_images that returns images as base64-encoded strings along with their MIME types.

Support Us

If you find this project helpful and would like to support future projects, consider buying us a coffee! Your support helps us continue building innovative AI solutions.

README image

Your contributions go a long way in fueling our passion for creating intelligent and user-friendly applications.

Table of Contents

Features

  • Fetch images from URLs (http/https)
  • Load images from local file paths
  • Specialized handling for large local images
  • Automatic image compression for large images (>1MB)
  • Parallel processing of multiple images
  • Proper MIME type mapping for different file extensions
  • Comprehensive error handling and logging

Prerequisites

  • Python 3.10+
  • uv package manager (recommended)

Installation

  1. Clone this repository
  2. Create and activate a virtual environment using uv:
uv venv
# On Windows:
.venv\Scripts\activate
# On Unix/MacOS:
source .venv/bin/activate
  1. Install dependencies using uv:
uv pip install -r requirements.txt

Running the Server

There are two ways to run the MCP server:

1. Direct Method

To start the MCP server directly:

uv run python mcp_image.py
2. Configure for Windsurf/Cursor
Windsurf

To add this MCP server to Windsurf:

  1. Edit the configuration file at ~/.codeium/windsurf/mcp_config.json
  2. Add the following configuration:
{
  "mcpServers": {
    "image": {
      "command": "uv",
        "args": ["--directory", "/path/to/mcp-image", "run", "mcp_image.py"]
    }
  }
}
Cursor

To add this MCP server to Cursor:

  1. Open Cursor and go to Settings (Navbar → Cursor Settings)
  2. Navigate to Features → MCP Servers
  3. Click on + Add New MCP Server
  4. Enter the following configuration:
{
  "mcpServers": {
    "image": {
      "command": "uv",
      "args": ["--directory", "/path/to/mcp-image", "run", "mcp_image.py"]
    }
  }
}

Available Tools

The server provides the following tools:

fetch_images: Fetch and process images from URLs or local file paths Parameters: image_sources: List of URLs or file paths to images Returns: List of processed images with base64 encoding and MIME types

Usage Examples

You can now use commands like:

  • "Fetch these images: [list of URLs or file paths]"
  • "Load and process this local image: [file_path]"
Examples
# URL-only test
[
  "https://upload.wikimedia.org/wikipedia/commons/thumb/7/70/Chocolate_%28blue_background%29.jpg/400px-Chocolate_%28blue_background%29.jpg",
  "https://imgs.search.brave.com/Sz7BdlhBoOmU4wZjnUkvgestdwmzOzrfc3GsiMr27Ik/rs:fit:860:0:0:0/g:ce/aHR0cHM6Ly9pbWdj/ZG4uc3RhYmxlZGlm/ZnVzaW9ud2ViLmNv/bS8yMDI0LzEwLzE4/LzJmOTY3NTViLTM0/YmQtNDczNi1iNDRh/LWJlMTVmNGM5MDBm/My5qcGc",
  "https://shigacare.fukushi.shiga.jp/mumeixxx/img/main.png"
]

# Mixed URL and local file test
[
  "https://upload.wikimedia.org/wikipedia/commons/thumb/7/70/Chocolate_%28blue_background%29.jpg/400px-Chocolate_%28blue_background%29.jpg",
  "C:\\Users\\username\\Pictures\\image1.jpg",
  "https://imgs.search.brave.com/Sz7BdlhBoOmU4wZjnUkvgestdwmzOzrfc3GsiMr27Ik/rs:fit:860:0:0:0/g:ce/aHR0cHM6Ly9pbWdj/ZG4uc3RhYmxlZGlm/ZnVzaW9ud2ViLmNv/bS8yMDI0LzEwLzE4/LzJmOTY3NTViLTM0/YmQtNDczNi1iNDRh/LWJlMTVmNGM5MDBm/My5qcGc",
  "C:\\Users\\username\\Pictures\\image2.jpg"
]

Debugging

If you encounter any issues:

  1. Check that all dependencies are installed correctly
  2. Verify that the server is running and listening for connections
  3. For local image loading issues, ensure the file paths are correct and accessible
  4. For "Unsupported image type" errors, verify the content type handling
  5. Look for any error messages in the server output

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.