DALL-E

Gere imagens usando a API DALL-E da OpenAI.

Documentação

Servidor MCP DALL-E

DALL-E MCP Logo

Um servidor MCP (Model Context Protocol) para gerar imagens usando a API DALL-E da OpenAI.

Recursos

  • Gere imagens usando DALL-E 2 ou DALL-E 3
  • Edite imagens existentes (somente DALL-E 2)
  • Crie variações de imagens existentes (somente DALL-E 2)
  • Valide a chave da API OpenAI

Instalação

# 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 Usuários do Cline

Ao usar este servidor MCP DALL-E com o Cline, é recomendado salvar as imagens geradas no diretório do seu workspace atual, definindo o parâmetro saveDir para corresponder ao seu diretório de trabalho atual. Isso garante que o Cline possa localizar e exibir corretamente as imagens geradas na sua conversa.

Exemplo de uso com o Cline:

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

Uso

Executando o Servidor

# Run the server
node build/index.js

Configuração para o Cline

Adicione o servidor dall-e ao arquivo de configurações MCP do Cline dentro das configurações do VSCode (ex.: ~/.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": []
    }
  }
}

Certifique-se de:

  1. Substituir /path/to/dalle-mcp-server/build/index.js pelo caminho real para o arquivo index.js compilado
  2. Substituir your-api-key-here pela sua chave da API OpenAI

Ferramentas Disponíveis

generate_image

Gere uma imagem usando DALL-E com base em um prompt 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 (obrigatório): Descrição em texto da imagem desejada
  • model (opcional): Modelo DALL-E a ser usado ("dall-e-2" ou "dall-e-3", padrão: "dall-e-3")
  • size (opcional): Tamanho da imagem gerada (padrão: "1024x1024")
    • DALL-E 3: "1024x1024", "1792x1024" ou "1024x1792"
    • DALL-E 2: "256x256", "512x512" ou "1024x1024"
  • quality (opcional): Qualidade da imagem gerada, somente DALL-E 3 ("standard" ou "hd", padrão: "standard")
  • style (opcional): Estilo da imagem gerada, somente DALL-E 3 ("vivid" ou "natural", padrão: "vivid")
  • n (opcional): Número de imagens a gerar (1-10, padrão: 1)
  • saveDir (opcional): Diretório para salvar as imagens geradas (padrão: diretório atual ou SAVE_DIR do .env). Para usuários do Cline: Definir isso para o diretório do seu workspace atual é recomendado para a exibição adequada das imagens.
  • fileName (opcional): Nome base dos arquivos das imagens geradas, sem extensão (padrão: "dalle-{timestamp}")

edit_image

Edite uma imagem existente usando DALL-E com base em um prompt de texto.

⚠️ Problema Conhecido (18 de março de 2025): A API de edição de imagens do DALL-E 2 atualmente tem um bug em que às vezes ignora o prompt e retorna a imagem original sem nenhuma edição, mesmo ao usar imagens e máscaras no formato RGBA adequado. Esse problema foi relatado no fórum da comunidade OpenAI. Se você encontrar esse problema, tente usar a ferramenta create_variation em vez disso, que parece funcionar de forma mais confiável.

{
  "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 (obrigatório): Descrição em texto das edições desejadas
  • imagePath (obrigatório): Caminho para a imagem a ser editada
  • mask (opcional): Caminho para a imagem da máscara (áreas brancas serão editadas, áreas pretas preservadas)
  • model (opcional): Modelo DALL-E a ser usado (atualmente apenas "dall-e-2" suporta edição, padrão: "dall-e-2")
  • size (opcional): Tamanho da imagem gerada (padrão: "1024x1024")
  • n (opcional): Número de imagens a gerar (1-10, padrão: 1)
  • saveDir (opcional): Diretório para salvar as imagens editadas (padrão: diretório atual ou SAVE_DIR do .env). Para usuários do Cline: Definir isso para o diretório do seu workspace atual é recomendado para a exibição adequada das imagens.
  • fileName (opcional): Nome base dos arquivos das imagens editadas, sem extensão (padrão: "dalle-edit-{timestamp}")

create_variation

Crie variações de uma imagem 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 (obrigatório): Caminho para a imagem da qual criar variações
  • model (opcional): Modelo DALL-E a ser usado (atualmente apenas "dall-e-2" suporta variações, padrão: "dall-e-2")
  • size (opcional): Tamanho da imagem gerada (padrão: "1024x1024")
  • n (opcional): Número de variações a gerar (1-10, padrão: 1)
  • saveDir (opcional): Diretório para salvar as imagens de variação (padrão: diretório atual ou SAVE_DIR do .env). Para usuários do Cline: Definir isso para o diretório do seu workspace atual é recomendado para a exibição adequada das imagens.
  • fileName (opcional): Nome base dos arquivos das imagens de variação, sem extensão (padrão: "dalle-variation-{timestamp}")

validate_key

Valide a chave da API OpenAI.

{}

Nenhum parâmetro necessário.

Desenvolvimento

Configuração de Testes

Observação: A seguinte configuração .env é necessária APENAS para executar testes, não para a operação normal.

Se você estiver desenvolvendo ou executando testes para este projeto, crie um arquivo .env no diretório raiz com sua chave da API 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 a operação normal com o Cline, configure sua chave de API no JSON de configurações do MCP, conforme descrito na seção "Adicionando às Configurações do MCP" acima.

Você pode obter sua chave de API na página de chaves de API da OpenAI.

Executando Testes

# 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"

Observação: Os testes usam chamadas reais à API e podem gerar cobranças na sua conta OpenAI.

Gerando Imagens de Teste

O projeto inclui um script para gerar imagens de teste para desenvolvimento e testes:

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

Isso criará uma imagem de teste simples no diretório assets que pode ser usada para testar os recursos de edição e variação.

Licença

MIT