Photoshop MCP Server

Un servidor MCP para integrar y automatizar Adobe Photoshop utilizando photoshop-python-api.

Documentación

Servidor MCP de Photoshop

PyPI Version PyPI Downloads Build Status License Python Version Platform GitHub stars GitHub issues GitHub last commit

⚠️ SOLO WINDOWS: Este servidor solo funciona en sistemas operativos Windows debido a su dependencia de interfaces COM específicas de Windows.

Un servidor de Protocolo de Contexto de Modelo (MCP) para la integración de Photoshop usando photoshop-python-api.

Inglés | 简体中文

Descripción General

Este proyecto proporciona un puente entre el Protocolo de Contexto de Modelo (MCP) y Adobe Photoshop, permitiendo que asistentes de IA y otros clientes MCP controlen Photoshop de forma programática.

Photoshop MCP Server Demo

¿Qué Puede Hacer?

Con este servidor MCP, los asistentes de IA pueden:

  • Crear, abrir y guardar documentos de Photoshop
  • Crear y manipular capas (texto, color sólido, etc.)
  • Obtener información sobre la sesión de Photoshop y los documentos
  • Aplicar efectos y ajustes a las imágenes
  • ¡Y mucho más!

Requisitos

Requisitos del Sistema

  • 🔴 SOLO SISTEMA OPERATIVO WINDOWS: Este servidor SOLO funciona en sistemas operativos Windows
    • El servidor depende de interfaces COM específicas de Windows para comunicarse con Photoshop
    • macOS y Linux NO son compatibles y NO PUEDEN ejecutar este software

Requisitos de Software

  • Adobe Photoshop: Debe estar instalado localmente (probado con versiones CC2017 hasta 2024)
  • Python: Versión 3.10 o superior

Instalación

Nota: Recuerda que este paquete solo funciona en sistemas Windows.

# Install using pip
pip install photoshop-mcp-server

# Or using uv
uv install photoshop-mcp-server

Configuración del Host MCP

Este servidor está diseñado para funcionar con varios hosts MCP. La variable de entorno PS_VERSION se utiliza para especificar a qué versión de Photoshop conectarse (por ejemplo, "2024", "2023", "2022", etc.).

La forma recomendada de configurar el servidor es usando uvx como comando, que es el formato estándar oficial.

Configuración Estándar (Recomendada)

Añade lo siguiente a la configuración de tu host MCP (funciona con Claude Desktop, Windsurf, Cline y otros hosts MCP):

{
  "mcpServers": {
    "photoshop": {
      "command": "uvx",
      "args": ["--python", "3.10", "photoshop-mcp-server"],
      "env": {
        "PS_VERSION": "2024"
      }
    }
  }
}

Opciones de Configuración

  • PS_VERSION: Especifica la versión de Photoshop a la que conectarse (por ejemplo, "2024", "2023", "2022", etc.)
  • command: Usa uvx para el enfoque estándar
  • args: Usa ["photoshop-mcp-server"] para ejecutar el servidor MCP de Photoshop
    • Para especificar una versión de Python explícitamente, usa ["--python", "3.10", "photoshop-mcp-server"] (se admite cualquier versión de 3.10 a 3.14)

Características Principales

Recursos Disponibles

  • photoshop://info - Obtener información de la aplicación de Photoshop
  • photoshop://document/info - Obtener información del documento activo
  • photoshop://document/layers - Obtener capas del documento activo

Herramientas Disponibles

El servidor proporciona varias herramientas para controlar Photoshop:

  • Herramientas de Documento: Crear, abrir y guardar documentos
  • Herramientas de Capa: Crear capas de texto, capas de color sólido, etc.
  • Herramientas de Sesión: Obtener información sobre la sesión de Photoshop, documento activo, selección
  • Herramientas de Script: Ejecutar JavaScript (JSX) arbitrario de Photoshop con photoshop_execute_jsx

photoshop_execute_jsx

Una vía de escape universal: ejecuta cualquier fragmento de JavaScript (ExtendScript/JSX) de Photoshop, para que puedas acceder a partes de la API de Photoshop que las herramientas dedicadas anteriores no cubren (canales, trazados, estados de historial, filtros, automatización personalizada, operaciones por lotes, ...).

  • Scripts compatibles: cualquier JavaScript de Photoshop que acepte la versión de Photoshop en ejecución. El motor ExtendScript de Photoshop se basa en ECMAScript 3, así que limítate a la sintaxis ES3 (var, sin funciones de flecha, sin let/const). Se inyecta automáticamente un polyfill de JSON.stringify, por lo que JSON.stringify(...) funciona incluso aunque el motor no tenga un objeto JSON nativo.
  • Tipo de script: pasa el cuerpo del script como una sola cadena. Devuelve un valor con una declaración return explícita, o deja la última expresión como resultado.
  • Valor de retorno: { "success": true, "result": <script output> } en caso de éxito, y { "success": false, "error": <message> } en caso de fallo. Un script que lanza una excepción dentro de Photoshop y una instancia de Photoshop que no se puede alcanzar en absoluto ambos reportan success: false, por lo que los llamadores nunca tienen que inspeccionar la carga útil para distinguir los dos casos.

Ejemplos:

// Count art layers in the active document
app.activeDocument.artLayers.length;
// Get every layer name as JSON
var doc = app.activeDocument;
var names = [];
for (var i = 0; i < doc.artLayers.length; i++) {
    names.push(doc.artLayers[i].name);
}
JSON.stringify(names);

Nota: El script se ejecuta con los mismos privilegios que la interfaz de usuario de Photoshop, por lo que puede modificar o destruir el documento activo. Guarda tu trabajo antes de ejecutar automatización destructiva.

Ejemplos de Prompts para Asistentes de IA

Una vez configurado en tu host MCP, puedes usar el servidor MCP de Photoshop en tus conversaciones con el asistente de IA. Aquí tienes algunos ejemplos de prompts para empezar:

Ejemplos Básicos

User: Can you create a new Photoshop document and add a text layer with "Hello World"?

AI Assistant: I'll create a new document and add the text layer for you.

[The AI uses the Photoshop MCP server to:
1. Create a new document using the `create_document` tool
2. Add a text layer using the `create_text_layer` tool with the text "Hello World"]

I've created a new Photoshop document and added a text layer with "Hello World".

Ejemplos Más Avanzados

User: Open my latest PSD file and tell me how many layers it has.

AI Assistant: I'll check your latest PSD file and count the layers.

[The AI uses the Photoshop MCP server to:
1. Get information about open documents
2. If no document is open, it can browse and open a PSD file
3. Retrieve and analyze the layer structure]

Your document has 12 layers, including 3 group folders and 2 adjustment layers.
User: Create a social media post with a gradient background and the text "Summer Sale" in a bold font.

AI Assistant: I'll create that social media post for you.

[The AI uses the Photoshop MCP server to:
1. Create a new document with appropriate dimensions for social media
2. Create a gradient fill layer with summer colors
3. Add a text layer with "Summer Sale" in a bold font
4. Position and style the text appropriately]

I've created your social media post with a gradient background and bold "Summer Sale" text.

Licencia

MIT

Agradecimientos