Gemini Image MCP Server
Geração de imagens usando a API Gemini do Google.
Documentação
Gemini Image MCP Server
Este é um servidor MCP (Model Context Protocol) que utiliza a API Gemini do Google para gerar imagens e salvá-las em um diretório especificado. Além de prompts de texto, você pode opcionalmente fornecer imagens de entrada para orientar o processo de geração de imagens. As imagens geradas são automaticamente comprimidas para reduzir o tamanho do arquivo.
Recursos
- Geração de imagens a partir de prompts de texto
- (Opcional) Geração de imagens usando imagens de referência de entrada
- Compressão automática de imagens geradas (JPEG, PNG)
- Atribuição de nomes de arquivo únicos para evitar conflitos de nomes
- Opera como um servidor MCP, aceitando chamadas de ferramentas via entrada/saída padrão
Pré-requisitos
- Node.js (v18 ou superior recomendado)
- Projeto Google Cloud com a API Gemini habilitada
- Chave da API Gemini
Configuração
Exemplo de configuração do servidor MCP para Roo Code
{
"mcpServers": {
"gemini-image-mcp-server": {
"command": "npx",
"args": [
"-y",
"@creating-cat/gemini-image-mcp-server"
],
"env": {
"GEMINI_API_KEY": "YOUR_GEMINI_API_KEY"
},
"disabled": false,
"timeout": 300
}
}
}
-
Substitua
YOUR_GEMINI_API_KEYpela sua chave real da API Gemini.- Você também pode usar
${env:GEMINI_API_KEY}para recuperar a chave de variáveis de ambiente (recurso do Roo Code).
- Você também pode usar
Ferramenta: generate_image
Este servidor MCP fornece uma ferramenta chamada generate_image.
Parâmetros de Entrada
| Nome do Parâmetro | Descrição | Valor Padrão |
|---|---|---|
prompt | (string, obrigatório) Prompt de texto para geração de imagem. Se imagens de entrada forem fornecidas, inclua instruções sobre como incorporá-las na imagem gerada. Recomenda-se inglês. | Nenhum |
output_directory | (string, opcional) Caminho do diretório onde a imagem gerada será salva. | output/images |
file_name | (string, opcional) Nome do arquivo de imagem salvo (sem extensão). | generated_image |
input_image_paths | (string[], opcional) Lista de caminhos de arquivo para imagens de referência de entrada. | [] (array vazio) |
use_enhanced_prompt | (boolean, opcional) Se deve usar prompts aprimorados para auxiliar instruções de IA. | true |
target_image_max_size | (number, opcional) Tamanho máximo (em pixels) para a borda mais longa após o redimensionamento. A proporção é preservada. | 512 |
force_conversion_type | (string, opcional) Opcionalmente, força a conversão para um formato específico ('jpeg', 'webp', 'png'). Se não especificado, o formato original será processado, com padrão PNG para imagens não-JPEG. | Nenhum |
skip_compression_and_resizing | (boolean, opcional) Se deve pular a compressão e o redimensionamento das imagens geradas. Se true, force_conversion_type e target_image_max_size serão ignorados. | false |
jpeg_quality | (number, opcional) Qualidade JPEG (0-100). Valores menores resultam em maior compressão. | 80 |
webp_quality | (number, opcional) Qualidade WebP (0-100). Valores menores resultam em maior compressão. | 80 |
png_compression_level | (number, opcional) Nível de compressão PNG (0-9). Valores maiores resultam em maior compressão. | 9 |
optipng_optimization_level | (number, opcional) Nível de otimização OptiPNG (0-7). Valores maiores resultam em maior compressão. | 2 |
Saída
Em caso de sucesso, o servidor retorna o caminho de salvamento da imagem gerada e uma mensagem detalhando o processo, incluindo os tamanhos de arquivo original e comprimido. Exemplo:
{
"content": [
{
"type": "text",
"text": "Image successfully generated and compressed at output/images/my_cat.jpg.\nOriginal size: 1024.12KB, Final size: 150.45KB"
}
]
}
Se ocorrer um erro, uma mensagem de erro será retornada.
Notas
- O tipo MIME e a proporção das imagens geradas dependem das configurações padrão da API Gemini.
- Manuseie sua chave de API com cuidado.
- Este servidor usa o modelo
gemini-2.0-flash-preview-image-generation. O Google pode descontinuar este modelo no futuro.
Licença
MIT