Skip to main content
Glama

photo-enhance-mcp

Prueba multiplataforma

Servidor MCP local para editar y mejorar fotos con IA, más un visor web antes/después para ajustar y procesar carpetas enteras. Todo corre en tu computadora (CPU; GPU Intel/NVIDIA opcional vía OpenVINO/Vulkan), sin enviar fotos a ningún servicio.

Local MCP server for AI photo editing and enhancement, plus a before/after web viewer. Runs fully offline.

Qué hace

Mejora y restauración

Herramienta

Qué hace

Modelo

enhance_scene

Mejora natural según la escena (nublado, noche, atardecer, interior, contraluz, niebla, retrato, sol fuerte) o detección automática

Filtro guiado + CLIP

detect_scene, list_scenes

Detecta el tipo de escena (CLIP + EXIF + histograma)

CLIP ViT-B/32

save_scene_profile, delete_scene_profile

Perfiles de escena propios con parámetros finos (luces, sombras, calidez, bruma…), guardados en profiles.json

—

auto_tune

Busca los parámetros óptimos de una foto con un procedimiento determinista (calidad, detalle por zona, recortes, pérdida de color, tinte, grano al 100%) y opcionalmente la guarda; si nada la mejora, la deja igual

autotune.py + pyiqa

auto_tune_batch, tune_status, tune_cancel

Lo mismo para una carpeta o lista de fotos, en segundo plano: cada foto con sus parámetros (per_photo) o un ajuste común para el conjunto (group). Los originales nunca se tocan

autotune.py

best_enhance

Prueba varias combinaciones, las puntúa con IA y aplica la mejor

todas + pyiqa

ai_retouch

Retoque de color y exposición aprendido de fotógrafos (MIT-Adobe FiveK)

Image-Adaptive 3D LUT

ai_restore

Restauración por instrucción en inglés: ruido, desenfoque, poca luz, neblina, lluvia

InstructIR

colorize

Colorea fotos en blanco y negro

DDColor

upscale

Aumenta la resolución ×2/×3/×4 con IA (en CPU, sin GPU)

realesr-general-x4v3; Real-ESRGAN x4plus (Vulkan) para ilustraciones

restore_faces

Restaura caras borrosas o de fotos viejas

GFPGAN 1.4 + YuNet

remove_objects

Borra objetos y rellena el hueco

LaMa

remove_background

Quita o reemplaza el fondo

rembg (ISNet)

score_images

Puntaje de calidad técnica y estética (0-100)

TOPIQ + NIMA (pyiqa)

Edición clásica: auto_enhance, adjust (brillo, contraste, saturación, calidez, gamma, nitidez), denoise, transform (recortar, redimensionar, rotar, convertir), image_info.

Comparar y procesar en lote: compare, compare_gallery, open_viewer, save_preset, list_presets, apply_preset.

Cada herramienta devuelve una vista previa para que el agente vea el resultado. Las fotos originales nunca se modifican: todo lo que se genera va, por defecto, a la subcarpeta mejoradas/ de la carpeta de las fotos (se crea sola). Las herramientas que procesan carpetas y el visor guardan con el mismo nombre que el original; las herramientas de una sola foto agregan un sufijo (DSC_0056_scene_nublado.jpg) para no pisar otras versiones. Todas aceptan otra carpeta o ruta de salida si se indica.

Related MCP server: ImageSorcery MCP

Visor web

  • Deslizador antes/después con zoom y paneo.

  • Histograma RGB y de luminosidad con recorte de sombras, luces y color medido por canal, y comparación con la original.

  • Cada control muestra en su barra: verde sin recorte, amarillo recorte tolerable (manchas chicas y dispersas, como reflejos), rojo recorte visible (zonas continuas, como un cielo quemado) y gris recorte visible causado por otros ajustes. Los umbrales están en clipping.py.

  • Recorte y rotación: rectángulo con proporciones fijas (libre, original, 1:1, 4:3, 3:2, 16:9, 4:5, 2:3), enderezado en tiempo real (±45°, sin esquinas vacías) y giros de 90°. Si el recorte deja la foto chica, al guardar se reescala hasta cerca del tamaño original: ×2-×3 con Lanczos de alta calidad (comparado contra detalle real, es más fiel que la IA a ese factor) y ×4 con IA (realesr-general-x4v3). El recorte es de cada foto: no se copia en presets ni en lotes, y los lotes conservan el recorte que ya tenía cada foto.

  • Panel en dos pestañas: Automática / IA (botón Analizar y mejorar con IA, que diagnostica la foto —escena, exposición, recortes, ruido, color— y busca los parámetros óptimos con el mismo procedimiento determinista que auto_tune, mostrando un informe; perfil de escena e intensidad) y Manual (brillo, contraste, saturación, calidez, gamma, nitidez; copiar/pegar y ajustes guardados). Los dos modos se combinan. La mejora automática clásica (auto_enhance) queda solo como herramienta MCP: el perfil hace lo mismo con mejores métodos y sumarlas recortaba luces, sombras y color.

  • Perfiles de escena (automático o manual) con intensidad regulable.

  • Controles en vivo: mejora automática, brillo, contraste, saturación, calidez, gamma, nitidez.

  • Ajustes guardados con nombre y aplicación en lote a las fotos seleccionadas. Si la foto actual se mejoró con el análisis con IA, el lote analiza cada foto seleccionada por separado y guarda su propio óptimo (conservando su recorte), en vez de copiar el de una a las demás.

  • Siempre parte del original: los ajustes no se acumulan.

.venv/bin/python server.py viewer ~/Fotos/viaje            # editadas en ~/Fotos/viaje/mejoradas
.venv/bin/python server.py viewer ~/Fotos/viaje ~/otra 8770  # otra carpeta de salida y otro puerto

Abre http://127.0.0.1:8765/. También se puede abrir desde el agente con la herramienta open_viewer (en ese caso vive mientras viva el servidor MCP).

En Windows: .venv\Scripts\python.exe server.py viewer C:\Fotos\viaje.

Para que siga corriendo aunque cierres la terminal o el agente (hasta reiniciar la PC), en Linux:

systemd-run --user --unit=visor-fotos "$PWD/.venv/bin/python" "$PWD/server.py" viewer ~/Fotos/viaje
systemctl --user stop visor-fotos   # para apagarlo

En Windows, sin ventana de consola: Start-Process .venv\Scripts\pythonw.exe -ArgumentList 'server.py','viewer','C:\Fotos\viaje'.

Instalación

Funciona en Linux, Windows y macOS (x86_64). Cada cambio se prueba automáticamente en Linux y Windows con GitHub Actions, instalando desde una carpeta con tildes y eñes en el nombre. Memoria: 8 GB de RAM como mínimo. Un perfil de escena sobre una foto de 24 MP usa ~4 GB, por eso el procesamiento en lote con perfil de escena trabaja de a una foto (sin perfil, de a tres).

Linux / macOS

git clone https://github.com/mzwenger/photo-enhance-mcp
cd photo-enhance-mcp
./setup.sh

Windows (PowerShell)

git clone https://github.com/mzwenger/photo-enhance-mcp
cd photo-enhance-mcp
powershell -ExecutionPolicy Bypass -File setup.ps1

El instalador (install.py) instala uv si falta, crea un entorno Python 3.12 (no hace falta tener Python instalado), instala PyTorch para CPU y descarga los modelos (~2 GB) en models/ y bin/, incluido Real-ESRGAN para tu sistema. Algunos modelos (CLIP, métricas de pyiqa, el codificador de texto de InstructIR) se descargan solos la primera vez que se usan.

El reescalado de fotos con IA (realesr-general-x4v3) corre en CPU. Real-ESRGAN x4plus, que se usa solo para ilustraciones, usa la GPU por Vulkan; si no hay Vulkan, cae a un reescalado clásico y lo avisa.

Conectarlo a Claude Code

Linux / macOS:

claude mcp add --scope user photo-enhance -- "$PWD/.venv/bin/python" "$PWD/server.py"

Windows:

claude mcp add --scope user photo-enhance -- "$PWD\.venv\Scripts\python.exe" "$PWD\server.py"

O agregá a ~/.claude.json (en Windows, %USERPROFILE%\.claude.json, con rutas como C:\\Users\\vos\\photo-enhance-mcp\\.venv\\Scripts\\python.exe):

{
  "mcpServers": {
    "photo-enhance": {
      "type": "stdio",
      "command": "/ruta/a/photo-enhance-mcp/.venv/bin/python",
      "args": ["/ruta/a/photo-enhance-mcp/server.py"]
    }
  }
}

Después pedile al agente cosas como "mejorá las fotos de ~/Fotos/viaje con el perfil automático" o "borrá el cartel de esta foto y subile la resolución".

Aceleración por hardware (opcional)

  • GPU Intel: sudo apt install intel-opencl-icd libze-intel-gpu1 y OpenVINO la usa sola.

  • Para forzar un dispositivo: IMAGE_KIT_DEVICE=CPU|GPU|NPU.

  • Memoria del servidor: los modelos quedan cargados para responder rápido y se descargan solos cuando el proceso supera IMAGE_KIT_MAX_RAM_GB (3 por defecto). Con más RAM, subirlo acelera las llamadas seguidas.

Estructura

server.py       servidor MCP, herramientas clásicas y visor web
scenes.py       mejora natural por escena y detección de escena
autotune.py     búsqueda determinista de parámetros óptimos
clipping.py     recorte tolerable vs visible (tamaño de mancha y total por tipo)
ai_enhance.py   3D LUT, InstructIR, DDColor y puntaje de calidad
ai/instructir/  arquitectura de InstructIR (MIT, ver su LICENSE)
install.py      instalación multiplataforma y descarga de modelos
setup.sh        instalador para Linux y macOS (instala uv y ejecuta install.py)
setup.ps1       instalador para Windows
tests/          prueba de humo (MCP y visor), la misma que corre GitHub Actions

Licencias

El código de este repositorio es MIT (ver LICENSE). Los modelos y algunas dependencias tienen licencias propias que se aplican a su uso:

Componente

Licencia

InstructIR, CLIP, rembg, YuNet

MIT / Apache-2.0

LaMa, GFPGAN, DDColor, Image-Adaptive 3D LUT, OpenVINO

Apache-2.0

Real-ESRGAN

BSD-3-Clause

pyiqa (usado por score_images y best_enhance)

PolyForm Noncommercial 1.0.0: solo uso no comercial

Revisá la licencia de cada proyecto antes de un uso comercial.

Créditos

LaMa · GFPGAN · Real-ESRGAN · rembg · InstructIR · DDColor · Image-Adaptive 3D LUT · IQA-PyTorch · CLIP · OpenCV Zoo · exportes ONNX de FaceFusion y Carve.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to process images locally via file paths—converting, resizing, removing backgrounds, smart cropping, upscaling, reading or stripping metadata, and batch processing—without files ever leaving the device.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to perform local computer-vision-based image recognition and editing, including cropping, resizing, rotating, background removal, drawing text and shapes, object detection, OCR, overlays, and metadata inspection without sending images to external servers.
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI agents to perform detailed local image analysis, including pixel-level queries, cropping, grid coordinates, comparisons, and zero-shot classification, all without cloud APIs, keys, or payments.
    1
    MIT