Skip to main content
Glama
Yamidor

Gemini Image Generation MCP

by Yamidor

Conector MCP — Generación de imágenes con Gemini

Servidor MCP remoto en Node.js/TypeScript que expone la herramienta generate_image para que Claude (claude.ai) genere imágenes usando la API de Google Gemini.

Requisitos

  1. API key de Google AI Studio: crea una gratis en https://aistudio.google.com/apikey

  2. Node.js 20+ (para probar en local)

  3. Una cuenta de hosting que soporte Node.js: Render, Railway, Fly.io o Google Cloud Run. Render tiene plan gratuito y es el más sencillo.

Prueba en local

npm install
cp .env.example .env        # edita .env con tu API key
npm run dev

El endpoint queda en http://localhost:3000/mcp/TU_SECRETO (POST). Verifica salud en http://localhost:3000/health.

Puedes probarlo con MCP Inspector:

npx @modelcontextprotocol/inspector
# Transport: Streamable HTTP
# URL: http://localhost:3000/mcp/TU_SECRETO

Despliegue en Render (gratis)

  1. Sube este proyecto a un repositorio de GitHub.

  2. En https://render.com crea un Web Service apuntando al repo.

  3. Configuración:

    • Build command: npm install && npm run build

    • Start command: npm start

    • Environment variables:

      • GEMINI_API_KEY = tu key de AI Studio

      • MCP_SECRET = un texto aleatorio largo (ej. genera uno con openssl rand -hex 12)

  4. Render te da una URL tipo https://gemini-mcp-xxxx.onrender.com.

Tu endpoint MCP final será:

https://gemini-mcp-xxxx.onrender.com/mcp/TU_SECRETO

Nota: en el plan gratuito de Render el servicio "duerme" tras 15 min de inactividad; la primera petición puede tardar ~30-50 segundos en despertar.

Conectar en claude.ai

  1. Ve a Configuración → Conectores (Settings → Connectors).

  2. Clic en Agregar conector personalizado (Add custom connector).

  3. Nombre: Gemini Imágenes — URL: tu endpoint MCP completo (con el secreto).

  4. Guarda. Al iniciar un chat, activa el conector en el menú de herramientas.

  5. Pídele a Claude: "Genera una imagen de un paisaje cafetero de Ebéjico al atardecer" — Claude llamará a generate_image y te mostrará el resultado.

Seguridad

  • El MCP_SECRET en la ruta evita que cualquiera que descubra tu dominio consuma tu cuota de la API de Gemini. No lo compartas ni lo subas a GitHub (usa variables de entorno).

  • La API key de Gemini nunca sale del servidor; Claude solo ve la herramienta.

  • Si sospechas que el secreto se filtró, cámbialo en las variables de entorno y actualiza la URL del conector.

Cambiar de modelo

Por defecto usa gemini-2.0-flash-preview-image-generation. Si Google publica un modelo nuevo (o quieres usar Imagen), cambia la variable GEMINI_IMAGE_MODEL. Verifica los modelos disponibles para tu key en https://ai.google.dev/gemini-api/docs/models

Estructura

gemini-mcp/
├── src/index.ts        # Servidor Express + MCP + llamada a Gemini
├── package.json
├── tsconfig.json
└── .env.example