DALL-E

Genera imágenes usando la API de DALL-E de OpenAI.

Documentación

Servidor MCP DALL-E

DALL-E MCP Logo

Un servidor MCP (Model Context Protocol) para generar imágenes usando la API de DALL-E de OpenAI.

Características

  • Generar imágenes usando DALL-E 2 o DALL-E 3
  • Editar imágenes existentes (solo DALL-E 2)
  • Crear variaciones de imágenes existentes (solo DALL-E 2)
  • Validar la clave de API de OpenAI

Instalación

# Clone the repository
git clone https://github.com/Garoth/dalle-mcp.git
cd dalle-mcp

# Install dependencies
npm install

# Build the project
npm run build

Nota importante para usuarios de Cline

Al usar este servidor MCP DALL-E con Cline, se recomienda guardar las imágenes generadas en el directorio de su espacio de trabajo actual configurando el parámetro saveDir para que coincida con su directorio de trabajo actual. Esto asegura que Cline pueda localizar y mostrar correctamente las imágenes generadas en su conversación.

Ejemplo de uso con Cline:

{
  "prompt": "A tropical beach at sunset",
  "saveDir": "/path/to/current/workspace"
}

Uso

Ejecutar el servidor

# Run the server
node build/index.js

Configuración para Cline

Agregue el servidor dall-e a su archivo de configuración de MCP de Cline dentro de la configuración de VSCode (ej. ~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json):

{
  "mcpServers": {
    "dalle-mcp": {
      "command": "node",
      "args": ["/path/to/dalle-mcp-server/build/index.js"],
      "env": {
        "OPENAI_API_KEY": "your-api-key-here",
        "SAVE_DIR": "/path/to/save/directory"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Asegúrese de:

  1. Reemplazar /path/to/dalle-mcp-server/build/index.js con la ruta real al archivo index.js compilado
  2. Reemplazar your-api-key-here con su clave de API de OpenAI

Herramientas disponibles

generate_image

Genera una imagen usando DALL-E a partir de una descripción de texto.

{
  "prompt": "A futuristic city with flying cars and neon lights",
  "model": "dall-e-3",
  "size": "1024x1024",
  "quality": "standard",
  "style": "vivid",
  "n": 1,
  "saveDir": "/path/to/save/directory",
  "fileName": "futuristic-city"
}

Parámetros:

  • prompt (obligatorio): Descripción de texto de la imagen deseada
  • model (opcional): Modelo DALL-E a usar ("dall-e-2" o "dall-e-3", por defecto: "dall-e-3")
  • size (opcional): Tamaño de la imagen generada (por defecto: "1024x1024")
    • DALL-E 3: "1024x1024", "1792x1024" o "1024x1792"
    • DALL-E 2: "256x256", "512x512" o "1024x1024"
  • quality (opcional): Calidad de la imagen generada, solo DALL-E 3 ("standard" o "hd", por defecto: "standard")
  • style (opcional): Estilo de la imagen generada, solo DALL-E 3 ("vivid" o "natural", por defecto: "vivid")
  • n (opcional): Número de imágenes a generar (1-10, por defecto: 1)
  • saveDir (opcional): Directorio para guardar las imágenes generadas (por defecto: directorio actual o SAVE_DIR de .env). Para usuarios de Cline: Se recomienda configurar esto en el directorio de su espacio de trabajo actual para una visualización adecuada de las imágenes.
  • fileName (opcional): Nombre base de archivo para las imágenes generadas sin extensión (por defecto: "dalle-{timestamp}")

edit_image

Edita una imagen existente usando DALL-E a partir de una descripción de texto.

⚠️ Problema conocido (18 de marzo de 2025): La API de edición de imágenes de DALL-E 2 actualmente tiene un error por el cual a veces ignora la descripción y devuelve la imagen original sin ediciones, incluso al usar imágenes y máscaras en formato RGBA correcto. Este problema ha sido reportado en el foro de la comunidad de OpenAI. Si experimenta este problema, intente usar la herramienta create_variation en su lugar, que parece funcionar de manera más confiable.

{
  "prompt": "Add a red hat",
  "imagePath": "/path/to/image.png",
  "mask": "/path/to/mask.png",
  "model": "dall-e-2",
  "size": "1024x1024",
  "n": 1,
  "saveDir": "/path/to/save/directory",
  "fileName": "edited-image"
}

Parámetros:

  • prompt (obligatorio): Descripción de texto de las ediciones deseadas
  • imagePath (obligatorio): Ruta de la imagen a editar
  • mask (opcional): Ruta de la imagen de máscara (las áreas blancas se editarán, las áreas negras se conservarán)
  • model (opcional): Modelo DALL-E a usar (actualmente solo "dall-e-2" admite edición, por defecto: "dall-e-2")
  • size (opcional): Tamaño de la imagen generada (por defecto: "1024x1024")
  • n (opcional): Número de imágenes a generar (1-10, por defecto: 1)
  • saveDir (opcional): Directorio para guardar las imágenes editadas (por defecto: directorio actual o SAVE_DIR de .env). Para usuarios de Cline: Se recomienda configurar esto en el directorio de su espacio de trabajo actual para una visualización adecuada de las imágenes.
  • fileName (opcional): Nombre base de archivo para las imágenes editadas sin extensión (por defecto: "dalle-edit-{timestamp}")

create_variation

Crea variaciones de una imagen existente usando DALL-E.

{
  "imagePath": "/path/to/image.png",
  "model": "dall-e-2",
  "size": "1024x1024",
  "n": 4,
  "saveDir": "/path/to/save/directory",
  "fileName": "image-variation"
}

Parámetros:

  • imagePath (obligatorio): Ruta de la imagen de la cual crear variaciones
  • model (opcional): Modelo DALL-E a usar (actualmente solo "dall-e-2" admite variaciones, por defecto: "dall-e-2")
  • size (opcional): Tamaño de la imagen generada (por defecto: "1024x1024")
  • n (opcional): Número de variaciones a generar (1-10, por defecto: 1)
  • saveDir (opcional): Directorio para guardar las imágenes de variación (por defecto: directorio actual o SAVE_DIR de .env). Para usuarios de Cline: Se recomienda configurar esto en el directorio de su espacio de trabajo actual para una visualización adecuada de las imágenes.
  • fileName (opcional): Nombre base de archivo para las imágenes de variación sin extensión (por defecto: "dalle-variation-{timestamp}")

validate_key

Valida la clave de API de OpenAI.

{}

No se requieren parámetros.

Desarrollo

Configuración de pruebas

Nota: La siguiente configuración de .env solo es necesaria para ejecutar pruebas, no para el funcionamiento normal.

Si está desarrollando o ejecutando pruebas para este proyecto, cree un archivo .env en el directorio raíz con su clave de API de OpenAI:

# Required for TESTS ONLY: OpenAI API Key
OPENAI_API_KEY=your-api-key-here

# Optional: Default save directory for test images
# If not specified, images will be saved to the current directory
# SAVE_DIR=/path/to/save/directory

Para el funcionamiento normal con Cline, configure su clave de API en el JSON de configuración de MCP como se describe en la sección "Agregar a la configuración de MCP" anterior.

Puede obtener su clave de API en la página de claves de API de OpenAI.

Ejecutar pruebas

# Run basic tests
npm test

# Run all tests including edit and variation tests
npm run test:all

# Run tests in watch mode
npm run test:watch

# Run specific test by name
npm run test:name "should validate API key"

Nota: Las pruebas usan llamadas reales a la API y pueden generar cargos en su cuenta de OpenAI.

Generar imágenes de prueba

El proyecto incluye un script para generar imágenes de prueba para desarrollo y pruebas:

# Generate a test image in the assets directory
npm run generate-test-image

Esto creará una imagen de prueba simple en el directorio assets que se puede usar para probar las funciones de edición y variación.

Licencia

MIT