Gemini Image and Audio generation
Servidor MCP para generación de imágenes y audio de Gemini
Documentación
Gemini Gen MCP
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
| Variable | Requerida | Predeterminada | Descripción |
|---|---|---|---|
GEMINI_API_KEY | Sí | - | Tu clave de API de Google Gemini |
GEMINI_DOWNLOAD_PATH | No | /tmp/gemini_gen_mcp | Directorio 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 generarmodel(cadena, opcional): Modelo de Gemini a utilizargemini-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
- Compatibles:
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 vozmodel(cadena, opcional): Modelo TTS de Gemini a utilizargemini-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:
| Voz | Estilo | Voz | Estilo | Voz | Estilo |
|---|---|---|---|---|---|
| Zephyr | Brillante | Puck | Animado | Charon | Informativo |
| Kore | Firme | Fenrir | Excitado | Leda | Juvenil |
| Orus | Firme | Aoede | Fresco | Callirrhoe | Relajado |
| Autonoe | Brillante | Enceladus | Entrecortado | Iapetus | Claro |
| Umbriel | Relajado | Algieba | Suave | Despina | Suave |
| Erinome | Claro | Algenib | Grave | Rasalgethi | Informativo |
| Laomedeia | Animado | Achernar | Suave | Alnilam | Firme |
| Schedar | Uniforme | Gacrux | Maduro | Pulcherrima | Directo |
| Achird | Amigable | Zubenelgenubi | Casual | Vindemiatrix | Gentil |
| Sadachbia | Vivaz | Sadaltager | Conocedor | Sulafat | Cá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
- Construido con FastMCP
- Impulsado por Google Gemini AI