Gemini Image Generator

Gere imagens de alta qualidade a partir de prompts de texto usando o modelo Gemini do Google.

Documentação

MseeP Badge smithery badge

Gemini Image Generator Server MCP server

Servidor MCP Gemini Image Generator

Gere imagens de alta qualidade a partir de prompts de texto usando o modelo Gemini do Google através do protocolo MCP.

Visão Geral

Este servidor MCP permite que qualquer assistente de IA gere imagens usando o modelo de IA Gemini do Google. O servidor lida com engenharia de prompts, conversão de texto para imagem, geração de nomes de arquivos e armazenamento local de imagens, facilitando a criação e o gerenciamento de imagens geradas por IA através de qualquer cliente MCP.

Recursos

  • Geração de imagens a partir de texto usando Gemini 2.0 Flash
  • Transformação de imagem para imagem baseada em prompts de texto
  • Suporte para imagens baseadas em arquivos e codificadas em base64
  • Geração automática e inteligente de nomes de arquivos baseada nos prompts
  • Tradução automática de prompts não-ingleses
  • Armazenamento local de imagens com caminho de saída configurável
  • Exclusão estrita de texto das imagens geradas
  • Saída de imagens em alta resolução
  • Acesso direto tanto aos dados da imagem quanto ao caminho do arquivo

Ferramentas MCP Disponíveis

O servidor fornece as seguintes ferramentas MCP para assistentes de IA:

1. generate_image_from_text

Cria uma nova imagem a partir de uma descrição em prompt de texto.

generate_image_from_text(prompt: str) -> Tuple[bytes, str]

Parâmetros:

  • prompt: Descrição em texto da imagem que você deseja gerar

Retornos:

  • Uma tupla contendo:
    • Dados brutos da imagem (bytes)
    • Caminho para o arquivo de imagem salvo (str)

Este formato de retorno duplo permite que assistentes de IA trabalhem diretamente com os dados da imagem ou referenciem o caminho do arquivo salvo.

Exemplos:

  • "Gere uma imagem de um pôr do sol sobre montanhas"
  • "Crie um porco voador fotorrealista em uma cidade de ficção científica"

Exemplo de Saída

Esta imagem foi gerada usando o prompt:

"Hi, can you create a 3d rendered image of a pig with wings and a top hat flying over a happy futuristic scifi city with lots of greenery?"

Flying pig over sci-fi city

Um porco 3D com asas e cartola voando sobre uma cidade futurista de ficção científica cheia de vegetação

Problemas Conhecidos

Ao usar este servidor MCP com o Claude Desktop Host:

  1. Problemas de Desempenho: Usar transform_image_from_encoded pode levar significativamente mais tempo para processar em comparação com outros métodos. Isso se deve à sobrecarga de transferência de grandes dados de imagem codificados em base64 através do protocolo MCP.

  2. Problemas de Resolução de Caminhos: Pode haver problemas ao resolver corretamente os caminhos das imagens ao usar o Claude Desktop Host. O aplicativo host pode não interpretar adequadamente os caminhos de arquivo retornados, dificultando o acesso às imagens geradas.

Para a melhor experiência, considere usar clientes MCP alternativos ou o método transform_image_from_file quando possível.

2. transform_image_from_encoded

Transforma uma imagem existente com base em um prompt de texto usando dados de imagem codificados em base64.

transform_image_from_encoded(encoded_image: str, prompt: str) -> Tuple[bytes, str]

Parâmetros:

  • encoded_image: Dados de imagem codificados em base64 com cabeçalho de formato (devem estar no formato: "data:image/[formato];base64,[dados]")
  • prompt: Descrição em texto de como você deseja transformar a imagem

Retornos:

  • Uma tupla contendo:
    • Dados brutos da imagem transformada (bytes)
    • Caminho para o arquivo de imagem transformada salvo (str)

Exemplo:

  • "Adicione neve a esta paisagem"
  • "Mude o fundo para uma praia"

3. transform_image_from_file

Transforma um arquivo de imagem existente com base em um prompt de texto.

transform_image_from_file(image_file_path: str, prompt: str) -> Tuple[bytes, str]

Parâmetros:

  • image_file_path: Caminho para o arquivo de imagem a ser transformado
  • prompt: Descrição em texto de como você deseja transformar a imagem

Retornos:

  • Uma tupla contendo:
    • Dados brutos da imagem transformada (bytes)
    • Caminho para o arquivo de imagem transformada salvo (str)

Exemplos:

  • "Adicione uma lhama ao lado da pessoa nesta imagem"
  • "Faça esta cena diurna parecer noturna"

Exemplo de Transformação

Usando a imagem do porco voador criada acima, aplicamos uma transformação com o seguinte prompt:

"Add a cute baby whale flying alongside the pig"

Antes: Flying pig over sci-fi city

Depois: Flying pig with baby whale

A imagem original do porco voador com uma baleia bebê fofa adicionada voando ao lado dele

Configuração

Pré-requisitos

  • Python 3.11+
  • Chave de API do Google AI (Gemini)
  • Aplicativo host MCP (Claude Desktop App, Cursor ou outros clientes compatíveis com MCP)

Obtendo uma Chave de API Gemini

  1. Visite a página de Chaves de API do Google AI Studio
  2. Entre com sua conta do Google
  3. Clique em "Criar Chave de API"
  4. Copie sua nova chave de API para uso na configuração
  5. Nota: A chave de API fornece uma certa cota de uso gratuito por mês. Você pode verificar seu uso no Google AI Studio

Instalação

Instalando via Smithery

Para instalar o Gemini Image Generator MCP para Claude Desktop automaticamente via Smithery:

npx -y @smithery/cli install @qhdrl12/mcp-server-gemini-image-gen --client claude

Instalação Manual

  1. Clone o repositório:
git clone https://github.com/your-username/mcp-server-gemini-image-generator.git
cd mcp-server-gemini-image-generator
  1. Crie um ambiente virtual e instale as dependências:
# Using uv (recommended)
uv venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv pip install -e .

# Or using regular venv
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
pip install -e .
  1. Configure as variáveis de ambiente (escolha um método):

Método A: Usando arquivo .env (opcional)

# Create .env file in the project root
cat > .env << 'EOF'
GEMINI_API_KEY=your-gemini-api-key-here
OUTPUT_IMAGE_PATH=/path/to/save/images
EOF

Método B: Defina diretamente na configuração do Claude Desktop (recomendado)

  • Defina as variáveis de ambiente diretamente no claude_desktop_config.json (mostrado na seção de configuração abaixo)

Configure o Claude Desktop

Adicione o seguinte ao seu claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
    "mcpServers": {
        "gemini-image-generator": {
            "command": "uv",
            "args": [
                "--directory",
                "/absolute/path/to/mcp-server-gemini-image-generator",
                "run",
                "mcp-server-gemini-image-generator"
            ],
            "env": {
                "GEMINI_API_KEY": "your-actual-gemini-api-key-here",
                "OUTPUT_IMAGE_PATH": "/absolute/path/to/your/images/directory"
            }
        }
    }
}

Notas Importantes de Configuração:

  1. Substitua os caminhos pelos seus caminhos reais:

    • Altere /absolute/path/to/mcp-server-gemini-image-generator para o local real onde você clonou este repositório
    • Altere /absolute/path/to/your/images/directory para onde você deseja que as imagens geradas sejam salvas
  2. Variáveis de Ambiente:

    • Substitua your-actual-gemini-api-key-here pela sua chave de API Gemini real do Google AI Studio
    • Use caminhos absolutos para OUTPUT_IMAGE_PATH para garantir que as imagens sejam salvas corretamente
  3. Exemplo com caminhos reais:

{
    "mcpServers": {
        "gemini-image-generator": {
            "command": "uv",
            "args": [
                "--directory",
                "/Users/username/Projects/mcp-server-gemini-image-generator",
                "run",
                "mcp-server-gemini-image-generator"
            ],
            "env": {
                "GEMINI_API_KEY": "GEMINI_API_KEY",
                "OUTPUT_IMAGE_PATH": "OUTPUT_IMAGE_PATH"
            }
        }
    }
}

Uso

Uma vez instalado e configurado, você pode pedir ao Claude para gerar ou transformar imagens usando prompts como:

Gerando Novas Imagens

  • "Gere uma imagem de um pôr do sol sobre montanhas"
  • "Crie uma ilustração de uma paisagem urbana futurista"
  • "Faça uma imagem de um gato usando óculos de sol"

Transformando Imagens Existentes

  • "Transforme esta imagem adicionando neve à cena"
  • "Edite esta foto para parecer que foi tirada à noite"
  • "Adicione um dragão voando ao fundo desta imagem"

As imagens geradas/transformadas serão salvas no seu caminho de saída configurado e exibidas no Claude. Com os tipos de retorno atualizados, os assistentes de IA também podem trabalhar diretamente com os dados da imagem sem precisar acessar os arquivos salvos.

Testes

Você pode testar o aplicativo executando o servidor de desenvolvimento FastMCP:

fastmcp dev server.py

Este comando inicia um servidor de desenvolvimento local e disponibiliza o MCP Inspector em http://localhost:5173/. O MCP Inspector fornece uma interface web conveniente onde você pode testar diretamente a ferramenta de geração de imagens sem precisar usar o Claude ou outro cliente MCP. Você pode inserir prompts de texto, executar a ferramenta e ver os resultados imediatamente, o que é útil para desenvolvimento e depuração.

Licença

Licença MIT