CheaperGen

Primeros pasos

MCP y agentes de IA

Conecta Claude, ChatGPT, Codex, Cursor, VS Code o cualquier cliente MCP a CheaperGen y deja que los agentes exploren modelos, consulten precios, generen videos e imágenes y obtengan resultados. Pega una URL, inicia sesión y autoriza la conexión: no tienes que copiar una clave de API. La facturación, los límites de solicitudes y los reembolsos automáticos funcionan igual que en la API REST.

Usar con agentes de IA#

Usa Servidor MCP cuando quieras que un asistente genere contenido multimedia por ti, por ejemplo, en el chat de Claude Code o Cursor. Usa Agent Skill cuando un agente escriba código para la API. Puedes usar ambos: la habilidad también indica a los agentes que prefieran las herramientas MCP cuando estén conectadas.

URL del servidor e inicio de sesión#

https://cheapergen.com/api/mcp
  • Transporte: HTTP con transporte Streamable, sin estado. Funciona con clientes que usan las versiones del protocolo MCP de 2025 y 2026-07-28.
  • Inicio de sesión: OAuth 2.1, según la especificación de autorización de MCP. La primera vez que se conecta un cliente, se abre una página CheaperGen en el navegador. Inicia sesión y autoriza la aplicación. Las aplicaciones autorizadas aparecen en Panel → Claves de API → Aplicaciones conectadas, donde puedes desconectarlas cuando quieras.
  • Sin navegador y CI: envía una clave de API en su lugar, como Authorization: Bearer cg_live_…. Consulta Usar una clave de API.

Las aplicaciones conectadas usan créditos reales

generate cobra de tu saldo prepagado. Autoriza solo las aplicaciones desde las que iniciaste la conexión y pide al agente que confirme el precio antes de tareas costosas. generate también acepta un límite de presupuesto max_cost_usd, que incluye el precio de emergencia.

Conectar un cliente#

Claude (claude.ai y Claude Desktop)#

  1. Abre Personalizar → Conectores y añade un conector personalizado.
  2. Ponle el nombre CheaperGen, pega la URL de arriba y elige Agregar.
  3. Elige Conectar, inicia sesión en CheaperGen y autoriza la conexión. Luego, activa el conector desde el menú de herramientas de un chat.

En los planes Team y Enterprise, es posible que primero un propietario tenga que añadir el conector a la organización. Los conectores que añadas en claude.ai también aparecen en Claude Desktop.

Claude Code#

claude mcp add --transport http cheapergen https://cheapergen.com/api/mcp

Luego ejecuta /mcp, selecciona cheapergen y elige Autenticar (o ejecuta claude mcp login cheapergen en una terminal). Se abrirá el navegador para iniciar sesión y autorizar la conexión. Añade --scope user para usarlo en todos tus proyectos. También puedes instalar el plugin, que agrega el servidor y la Agent Skill en un solo paso:

Plugin de Claude Code
/plugin marketplace add CheaperGen/skills
/plugin install cheapergen@cheapergen

ChatGPT#

Aplicación de escritorio (macOS y Windows). En el modo Trabajo o Codex, la aplicación de escritorio de ChatGPT usa la misma configuración MCP que Codex CLI, así que codex mcp add también la conecta. O añádela desde la aplicación:

  1. Abre Settings → MCP servers → Add server.
  2. Ponle el nombre cheapergen, elige Streamable HTTP, pega la URL anterior y guarda.
  3. Selecciona Reiniciar, luego Autenticar e inicia sesión en CheaperGen para autorizar la conexión. Escribe /mcp en el cuadro de mensaje para comprobarla.

chatgpt.com. Los servidores MCP personalizados se convierten en plugins, disponibles en espacios de ChatGPT Business, Enterprise y Edu (en Business, los administradores y propietarios los añaden). Añádelos desde la web, no desde la aplicación móvil:

  1. Abre Plugins → + → Add custom MCP server.
  2. Ponle el nombre CheaperGen, pega la URL anterior y elige OAuth para la autenticación.
  3. Marca Entiendo y quiero continuar, elige Crear como plugin, instálalo, inicia sesión y autoriza la conexión.
  4. En un chat, escribe @ y elige el plugin. ChatGPT te pedirá confirmación antes de ejecutar generate o add_credits.

Límites de los planes en chatgpt.com

Los usuarios de Pro pueden conectar servidores MCP personalizados en chatgpt.com con herramientas de solo lectura, para que ChatGPT pueda explorar modelos y consultar precios, pero no generar contenido. Los otros planes individuales no permiten añadirlos desde la web. La aplicación de escritorio funciona con cualquier plan en el modo Trabajo o Codex. La investigación profunda y el conocimiento de empresa solo usan servidores con herramientas search y fetch, que CheaperGen no tiene; los chats normales sí funcionan.

Codex#

codex mcp add cheapergen --url https://cheapergen.com/api/mcp

Esto añade el servidor a ~/.codex/config.toml y abre el navegador para iniciar sesión. ¿Lo omitiste? Ejecuta codex mcp login cheapergen. La CLI de Codex, la extensión de IDE de Codex (menú del engranaje → Servidores MCP) y la aplicación de escritorio de ChatGPT leen este archivo, así que basta con configurarlo una vez. Las tareas en la nube de Codex no lo leen. Para editar el archivo manualmente:

~/.codex/config.toml
[mcp_servers.cheapergen]
url = "https://cheapergen.com/api/mcp"

Cursor#

Añade esto a ~/.cursor/mcp.json (todos los proyectos) o a .cursor/mcp.json (un solo proyecto). Luego abre Personalizar → MCP y conecta cheapergen. En la CLI de Cursor, ejecuta cursor-agent mcp enable cheapergen y luego cursor-agent mcp login cheapergen.

~/.cursor/mcp.json
{
  "mcpServers": {
    "cheapergen": {
      "url": "https://cheapergen.com/api/mcp"
    }
  }
}

VS Code (GitHub Copilot)#

Añádelo a .vscode/mcp.json o ejecuta MCP: Agregar servidor… y elige HTTP. VS Code te pedirá iniciar sesión la primera vez que se inicie el servidor. Luego, usa las herramientas en el modo de agente de Copilot Chat.

.vscode/mcp.json
{
  "servers": {
    "cheapergen": {
      "type": "http",
      "url": "https://cheapergen.com/api/mcp"
    }
  }
}

Otros clientes#

Los clientes que usan servidores remotos y OAuth solo necesitan la URL (algunos usan "serverUrl" en vez de "url"). Los clientes que solo ejecutan servidores locales (stdio) pueden usar el puente mcp-remote, que requiere Node.js y gestiona el inicio de sesión.

{
  "mcpServers": {
    "cheapergen": {
      "type": "http",
      "url": "https://cheapergen.com/api/mcp"
    }
  }
}

Usar una clave de API (sin navegador, CI)#

Si no se puede iniciar sesión mediante un navegador, envía una clave de API desde Panel → Claves de API. Crea una clave distinta para cada agente para poder revocarla por separado. Guárdala en una variable de entorno, como se muestra a continuación: las comillas simples guardan el nombre de la variable, no la clave, y el cliente lee su valor al conectarse. Claude Code también sustituye ${CHEAPERGEN_API_KEY} en un .mcp.json compartido usando el entorno de cada desarrollador.

claude mcp add --transport http cheapergen https://cheapergen.com/api/mcp \
  --header 'Authorization: Bearer ${CHEAPERGEN_API_KEY}'

Herramientas#

Cada herramienta envuelve el mismo código que la API REST (referencia de la API), así que coinciden los precios, la validación y los errores. Los resultados son JSON compacto. Una imagen terminada también llega como una pequeña vista previa integrada, para que el chat la muestre y el agente pueda revisarla, y cada archivo de salida llega como enlace a un recurso para mostrarlo o descargarlo.

Herramientas
list_modelscategory?, vendor?
Modelos con ID de endpoint, precio inicial, precio de lista y descuento (list_price_source: official, o reference, indicado por list_price_label, por ejemplo, fal API). Filtra por video / image o por proveedor.
get_modelmodel
Un ID de modelo o de endpoint. Devuelve el esquema de entrada JSON de cada endpoint (enums, valores predeterminados, límites de archivos multimedia de referencia y menciones @Image1), la tabla de precios por nivel y las especificaciones.
quoteendpoint, input?
Precio de una entrada sin ejecutarla: amount_usd, official_usd (con list_price_source / list_price_label), discount_pct — tu precio, con custom_price y volume_level cuando un Plan Pro o Max o un contrato lo fija. Gratis. Para videos de referencia, envía reference_video_durations. También indica si tu saldo alcanza para el trabajo y, si no, qué recarga ofrecer.
generateendpoint, input, wait_seconds?, max_cost_usd?, allow_fallback_price?
De pago. envía una generación, reserva el precio y devuelve el id y el coste. Espera hasta wait_seconds (máximo 50) y devuelve el resultado si termina a tiempo. Rechaza la solicitud sin cobrar si el precio supera max_cost_usd. allow_fallback_price (predeterminado true) acepta el precio de emergencia —como máximo el precio oficial, dentro de max_cost_usd— cuando la capacidad habitual no está disponible, al enviar la solicitud o más adelante si falla; false nunca te hace pagar más que el precio cotizado. Una imagen terminada también llega como una pequeña vista previa integrada.
get_generationid, wait_seconds?
Estados (queued, running, succeeded, failed, canceled), URL de salida, error y coste final. Puede esperar hasta 50 s por el resultado. Una imagen terminada también llega como una pequeña vista previa integrada.
upload_filefilename, size_bytes? o data_base64?
Gratis. Convierte una foto, un video o un audio de tu ordenador en una URL https para usarla como entrada. Los agentes que pueden ejecutar comandos reciben una URL de subida de corta duración para el tamaño exacto del archivo y un comando curl para enviarlo; los demás pueden enviar un archivo pequeño (hasta unos 3 MB) en base64. Mismos tipos y límites que POST /uploads.
get_accountnone
Saldo prepagado, crédito exclusivo para imágenes (solo para modelos de imagen, nunca video), importe reservado para generaciones en curso, número de generaciones activas y configuración de recarga automática. También los límites de la API de la cuenta (limits).
add_creditsamount_usd?
Crea un enlace de pago de Stripe (tarjeta, billeteras digitales, Alipay o WeChat Pay) para que el usuario lo abra y pague. No se cobra nada hasta que pague en el navegador; los créditos se añaden en unos segundos. Los agentes lo llaman cuando generate devuelve insufficient_balance.

Las imágenes suelen generarse en una sola llamada a generate. Los videos tardan de uno a varios minutos, así que el agente envía la tarea y luego llama a get_generation con wait_seconds hasta que termine. Un generate terminado devuelve:

generate → resultado
{
  "id": "gen_8c2QmX1nq0k4Lw7Z",
  "status": "succeeded",
  "endpoint": "bytedance/seedream-5.0-lite/text-to-image",
  "outputs": [
    "https://cdn.cheapergen.com/outputs/gen_8c2QmX1nq0k4Lw7Z.png"
  ],
  "cost": {
    "amount_usd": 0.0303,
    "official_usd": 0.035,
    "list_price_source": "official",
    "list_price_label": "Oficial",
    "saved_usd": 0.0047,
    "final": true
  },
  "created_at": "2026-10-16T09:12:43.545Z",
  "completed_at": "2026-10-16T09:12:49.058Z",
  "outputs_expire_at": "2026-10-17T09:12:49.058Z",
  "next": "Listo. Muestra o descarga las URL de salida antes de que venza outputs_expire_at."
}

Ejemplos de prompts#

  • “¿Qué modelos de video de CheaperGen aceptan videos de referencia y cuánto costarían 5 segundos a 720p en cada uno?”
  • “Genera un video de 5 segundos a 720p con Seedance 2.0 Fast: un barco de papel avanza por una calle lluviosa de neón, con un lento acercamiento de cámara. Dime el precio primero.”
  • “Crea cuatro fotos de producto de esta taza con Seedream 5.0 Lite, cada una por menos de $0.05: https://example.com/mug.png”
  • “Anima esta foto y conviértela en un clip vertical de 6 segundos con Wan 3.0: https://example.com/portrait.jpg”
  • “Anima la foto de mi escritorio (~/Desktop/beach.jpg) en un clip de 5 segundos con Kling 3.0. Dime primero el precio.”
  • “Video de referencia a partir de Seedance 2.0: @Image1 es el personaje, @Image2 la calle; mueve la cámara como en @Video1. Estas son las URL: …”
  • “¿Cuál es mi saldo de CheaperGen y cuántos clips de 10 segundos a 1080p con Seedance 2.0 puedo pagar?”

Agent Skill#

La habilidad CheaperGen consiste en un único archivo SKILL.md con formato Agent Skills. Enseña al agente el flujo de trabajo completo: elegir un modelo, leer el esquema, consultar el precio, enviar la solicitud, consultar el estado o verificar webhooks, mencionar referencias, subir archivos, y gestionar precios y errores. Los agentes solo la cargan cuando la tarea lo requiere. Para las solicitudes REST, lee tu clave de CHEAPERGEN_API_KEY y, si las herramientas MCP están conectadas, les da prioridad. El código fuente está en github.com/CheaperGen/skills.

/plugin marketplace add CheaperGen/skills
/plugin install cheapergen@cheapergen

La CLI de skills la instala en Claude Code, Cursor, Codex, Gemini CLI y otros agentes (-a permite elegir uno; -g la instala para todos los proyectos). En las aplicaciones de Claude, comprime la carpeta cheapergen y súbela como habilidad personalizada.

Límites y facturación#

  • Los mismos límites de solicitudes que en REST se aplican por aplicación o clave conectada (cada solicitud MCP cuenta), al igual que el límite por cuenta de generaciones en curso.
  • El precio se reserva cuando generate envía la solicitud y se reembolsa íntegramente si la generación falla o se cancela. Consulta Facturación y créditos.
  • Las generaciones creadas mediante MCP aparecen en tu panel y en GET /api/v1/generations, con source: "mcp".
  • Los tokens de inicio de sesión duran una hora y el cliente los renueva automáticamente. Si desconectas la aplicación desde el panel, su acceso termina de inmediato.
  • Las URL de salida son públicas y caducan según el plazo de retención configurado para la API (un día por defecto). Descarga lo que quieras conservar.

Solución de problemas#

  • El cliente indica que el servidor requiere autenticación: completa el inicio de sesión que inició (en Claude Code: /mcp → cheapergen → Authenticate). Si desconectaste la aplicación o no la usaste en 90 días, vuelve a iniciar sesión.
  • La página de inicio de sesión indica que la aplicación no está registrada o que la redirección no coincide: quita el servidor del cliente y vuelve a añadirlo para que el cliente lo registre de nuevo.
  • Una llamada a una herramienta agota el tiempo de espera: reduce el valor de wait_seconds. La generación sigue en curso; puedes recuperarla más tarde con get_generation.
  • invalid_request:: la entrada no coincide con el esquema del endpoint. El error indica el campo en param; pide al agente que llame primero a get_model.

¿Algo no está claro o falta información? Escribe a support@cheapergen.com; leemos todos los mensajes.