Gemini Image and Audio generation

Servidor MCP para generación de imágenes y audio de Gemini

Documentación

Gemini Gen MCP

PyPI version License: MIT

Servidor MCP para la generación de imágenes y audio con Gemini utilizando los modelos de IA de Google Gemini.

Características

Este servidor MCP proporciona herramientas para:

  • Generar imágenes a partir de texto utilizando el modelo Flash Image de Gemini
  • Generar audio a partir de texto utilizando el modelo TTS Gemini 2.5 Flash Preview

Instalación

Desde PyPI

pip install gemini-gen-mcp

Desde el código fuente

git clone https://github.com/ServiceStack/gemini-gen-mcp.git
cd gemini-gen-mcp
pip install -e .

Requisitos previos

Necesitas una clave de API de Google Gemini para usar este servidor. Obtén una en Google AI Studio.

Variables de entorno

VariableRequeridaPredeterminadaDescripción
GEMINI_API_KEYSí-Tu clave de API de Google Gemini
GEMINI_DOWNLOAD_PATHNo/tmp/gemini_gen_mcpDirectorio donde se guardan los archivos generados

Configura las variables de entorno:

export GEMINI_API_KEY='your-api-key-here'
export GEMINI_DOWNLOAD_PATH='/path/to/downloads'  # optional

Los archivos generados se organizan por tipo y fecha:

  • Imágenes: $GEMINI_DOWNLOAD_PATH/images/YYYY-MM-DD/
  • Audio: $GEMINI_DOWNLOAD_PATH/audios/YYYY-MM-DD/

Cada archivo generado incluye un archivo .info.json complementario con metadatos de generación.

Uso

Ejecutar el servidor

Ejecuta el servidor MCP directamente:

gemini-gen-mcp

O como módulo de Python:

python -m gemini_gen_mcp.server

Uso con Claude Desktop

Consulta CLAUDE_CONFIG.md para obtener instrucciones detalladas.

Agrega esto a tu claude_desktop_config.json:

{
  "mcpServers": {
    "gemini-gen": {
      "description": "Gemini Image and Audio TTS generation",
      "command": "uvx",
      "args": [
        "gemini-gen-mcp"
      ],
      "env": {
        "GEMINI_API_KEY": "$GEMINI_API_KEY"
      }
    }
  }
}

Uso en llms .py

O pega la configuración del servidor en Servidores MCP de llms .py:

Nombre: gemini-gen

{
  "description": "Gemini Image and Audio TTS generation",
  "command": "uvx",
  "args": [
    "gemini-gen-mcp"
  ],
  "env": {
    "GEMINI_API_KEY": "$GEMINI_API_KEY"
  }
}

Servidor de desarrollo

Para desarrollo, puedes ejecutar este servidor usando uv:

{
  "mcpServers": {
    {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "/path/to/ServiceStack/gemini-gen-mcp",
        "gemini-gen-mcp"
      ],
      "env": {
        "GEMINI_API_KEY": "$GEMINI_API_KEY"
      }
    }
  }
}

Herramientas disponibles

text_to_image

Genera imágenes a partir de descripciones de texto utilizando los modelos de generación de imágenes de Gemini.

Parámetros:

  • prompt (cadena, requerido): Descripción de texto de la imagen a generar
  • model (cadena, opcional): Modelo de Gemini a utilizar
    • gemini-2.5-flash-image (predeterminado)
    • gemini-3-pro-image-preview
  • aspect_ratio (cadena, opcional): Relación de aspecto para la imagen generada (predeterminado: "1:1")
    • Compatibles: 1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9
  • temperature (flotante, opcional): Temperatura de muestreo para la generación de imágenes (predeterminado: 1.0)
  • top_p (flotante, opcional): Parámetro de muestreo de núcleo (opcional)

Ejemplo:

{
  "prompt": "A serene mountain landscape at sunset with a lake",
  "model": "gemini-2.5-flash-image",
  "aspect_ratio": "16:9",
  "temperature": 1.0
}

text_to_audio

Genera audio/voz a partir de texto utilizando los modelos TTS de Gemini. La salida se guarda en formato WAV.

Parámetros:

  • text (cadena, requerido): Texto a convertir en voz
  • model (cadena, opcional): Modelo TTS de Gemini a utilizar
    • gemini-2.5-flash-preview-tts (predeterminado)
    • gemini-2.5-pro-preview-tts
  • voice (cadena, opcional): Voz a utilizar para la generación de voz (predeterminado: "Kore")

Voces disponibles:

VozEstiloVozEstiloVozEstilo
ZephyrBrillantePuckAnimadoCharonInformativo
KoreFirmeFenrirExcitadoLedaJuvenil
OrusFirmeAoedeFrescoCallirrhoeRelajado
AutonoeBrillanteEnceladusEntrecortadoIapetusClaro
UmbrielRelajadoAlgiebaSuaveDespinaSuave
ErinomeClaroAlgenibGraveRasalgethiInformativo
LaomedeiaAnimadoAchernarSuaveAlnilamFirme
SchedarUniformeGacruxMaduroPulcherrimaDirecto
AchirdAmigableZubenelgenubiCasualVindemiatrixGentil
SadachbiaVivazSadaltagerConocedorSulafatCálido

Ejemplo:

{
  "text": "Hello, this is a test of the Gemini text to speech system.",
  "model": "gemini-2.5-flash-preview-tts",
  "voice": "Kore"
}

Desarrollo

Configurar el entorno de desarrollo

# Clone the repository
git clone https://github.com/ServiceStack/gemini-gen-mcp.git
cd gemini-gen-mcp

# Install in editable mode with dependencies
pip install -e .

Ejecutar pruebas

# Install test dependencies
pip install pytest pytest-asyncio

# Run tests
```bash
# uv run pytest tests -v
npm test

Licencia

Este proyecto está licenciado bajo la Licencia MIT: consulta el archivo LICENSE para más detalles.

Contribuciones

¡Las contribuciones son bienvenidas! No dudes en enviar una Solicitud de Extracción (Pull Request).

Soporte

Para problemas y preguntas, utiliza la página de GitHub Issues.

Agradecimientos

Enlaces