Sustain

← Volver a Aprende
Novedades

9 de septiembre de 2026

· 12 min de lectura

Tu agente de IA ya puede crear un álbum contigo

Los agentes de IA están empezando a usar la web en lugar de solo leerla. Pídele a uno que reserve una mesa o rellene un formulario y lo intentará —normalmente haciendo una captura de pantalla, buscando un botón y haciendo clic donde cree que está el botón. Funciona hasta que cambia el diseño, la etiqueta es un icono, o se abre una ventana modal que no esperaba.

Nos parece una forma extraña de tratar un software que ya sabe cómo hacer el trabajo. Por eso Sustain ahora publica sus propias herramientas para cualquier agente de IA que trabaje en tu navegador: acciones con nombre y tipadas como crear un álbum, incorporar mis fotos, construirlo. El agente llama al mismo código que llaman los botones. Este artículo cubre qué puede hacer, qué deliberadamente no puede, y por qué construir para agentes es una ventaja real y no una casilla que marcar.

Ahora funciona de dos formas. Un agente en cualquier parte — Claude en el escritorio, ChatGPT, cualquier cosa que hable MCP — se conecta a mcp.sustain-app.com y actúa en tu cuenta mediante una autorización que apruebas y puedes revocar. Y un agente dentro de tu navegador recoge las mismas herramientas de la página mediante WebMCP. Este artículo trata sobre todo del primero; la parte del navegador está al final.

El problema de los agentes que hacen clic

Un agente de navegador que maneja un sitio web normal está haciendo visión por computadora sobre una interfaz diseñada para humanos. Lee una captura de pantalla, adivina qué píxeles son el botón Crear álbum, hace clic, espera, vuelve a hacer una captura, e intenta averiguar si funcionó.

Cada uno de esos pasos puede fallar de una forma que el agente no puede ver. Hace clic en un botón deshabilitado y lee la página sin cambios como un éxito. Pasa por alto un error de validación mostrado en un color que no puede interpretar. Un menú desplegable se representa de forma distinta en una ventana estrecha y todo el plan se descarrila. Peor aún, no tiene ni idea de lo que cuesta una acción — nada en pantalla le indica que ese botón concreto gasta tus créditos.

Nada de eso significa que el agente sea malo en su trabajo. Se le está pidiendo que haga ingeniería inversa de una intención a partir de una imagen, cuando el sitio simplemente podría habérselo dicho.

Lo que construimos en su lugar

Sustain publica un conjunto de herramientas: acciones con nombre y tipos, con descripciones escritas para una máquina que nunca ha visto nuestra interfaz. Un agente las llama en lugar de buscar botones.

Se alcanzan de dos formas. mcp.sustain-app.com es un servidor MCP alojado — Claude en el escritorio, ChatGPT, Cursor, cualquier cosa que hable MCP se conecta por red y trabaja en tu cuenta mediante una autorización que tú apruebas. Y cuando un agente se ejecuta dentro de tu navegador, las mismas herramientas se publican en la página mediante WebMCP, un estándar web emergente. Casi todo este artículo trata del primero; la parte del navegador está al final.

Hoy se ofrecen diez herramientas, que se corresponden con el recorrido real de crear un álbum y no con nuestros endpoints REST:

  • ask_site — responde preguntas a partir de nuestro propio contenido publicado (precios, impresión, privacidad, las guías que estás leyendo ahora) y devuelve las páginas de origen, de modo que el agente pueda citar en lugar de inventar.
  • create_album y album_status — inician un álbum y comprueban cómo va.
  • request_photos e import_google_photos — dos formas de incorporar fotos, ninguna de las cuales envía una sola imagen a través de la conversación. Más sobre esto a continuación.
  • quick_place y build_album — organiza las fotos de forma gratuita, o ejecuta la construcción completa con IA.
  • list_albums, get_credits, start_checkout — encuentra tus álbumes, consulta tu saldo, compra más créditos.

La versión corta

Otros sitios hacen que un agente adivine qué botón pulsar. Nosotros le entregamos los botones, etiquetados, con las consecuencias escritas encima.

Conectar Claude o ChatGPT (dos minutos)

Esta es la ruta que no necesita indicadores ni extensiones, y funciona en cualquier plan, incluido el gratuito.

En Claude, abre Ajustes → Conectores → Añadir conector personalizado y pega https://mcp.sustain-app.com/mcp. Claude encontrará el resto por su cuenta.

Llegarás a una página de Sustain que pregunta qué puede hacer esta aplicación en tu cuenta. Cuatro casillas: ver tus álbumes, crear y editar álbumes, gastar tus créditos en procesos de IA y ver tu saldo y tus planes. Puedes marcar menos de lo que pidió — el agente recibe lo que concedes. Un agente sin gastar créditos ni siquiera ve la herramienta que inicia un proceso de pago.

Luego pide lo que quieras. «Hazme un álbum de mi viaje a Italia» basta. Si el agente puede leer tus archivos — Claude en el escritorio puede — crea el álbum y sube las fotos él mismo; solo dile qué carpeta. Si no puede, te da un enlace para abrir en el dispositivo donde están las fotos. En ambos casos te ofrece después ejecutar la construcción con IA, y te dice que cuesta créditos antes de hacerlo.

Puedes retirarlo cuando quieras desde Ajustes → Aplicaciones conectadas. La desconexión surte efecto en la siguiente llamada del agente, porque emitimos esos tokens nosotros en lugar de repartir algo que no podríamos revocar.

Point it at a folder: install the skill

The connector hands an agent the tools. It does not tell it how to use them well, and uploading is where that gap shows. An upload ticket takes a whole batch of files per request and allows twenty requests an hour — plenty when the agent sends sixty photos at a time, useless when it sends one at a time, which is the shape an agent tends to improvise first. It works for nineteen photos and then stalls for an hour.

So we publish the arithmetic as a skill: a short recipe your agent installs once, which knows the batch sizes, the file types we accept, and what to do when something is refused. Install it whichever way matches the Claude you use.

  • Claude Code, in a terminal. Paste the command below to add our catalogue, then run /plugin install sustain-skills@sustain.
  • The Claude desktop app. Open Settings → Skills (under Customize), press Add, and upload the skill file. Skills there read SKILL.md from the top of the archive, which is exactly what that download is — the plugin archive the terminal uses is a different shape and will not work here.

Both need the same thing underneath: an agent that can actually reach your disk and run a command. A Claude that only runs in the cloud cannot open ~/Pictures/Italy no matter which skill it has, and for that one the upload page is the right route.

Claude Code — paste this

/plugin marketplace add https://www.sustain-app.com/claude-plugin/marketplace.json

1

Install the skill

Paste the command above, then pick Sustain Skills from the /plugin menu. Once, not per album.

2

Name a folder

That is the whole instruction: “make a Sustain album from ~/Pictures/Italy”. You do not have to select the photos, sort them, or zip anything.

3

Read the survey before you agree

Nothing is created yet. It counts what it found, adds up the megabytes, and lists what it is going to leave behind — screenshots that are not photos, a stray .gif, an empty file. Then it asks. If the folder needs more than twenty requests it says so up front instead of stopping halfway.

4

Let it upload

It creates the album, takes a ticket, and sends the files in batches straight from your disk. Duplicates you already uploaded are recognised and skipped by the server, so pointing it at a folder twice does not double the album.

5

Free draft first, AI only if you say so

It lays the photos out immediately for nothing. The full AI pass — reading every photo, then curating and designing — spends credits, so it quotes you first and waits. Neither step needs you to open the site.

Your photos never enter the conversation

The files go from your disk to us. They are not read into the chat, not encoded into a tool call, and not passed through the model — which is what makes four hundred of them a non-event rather than an impossibility.

If your agent says it cannot reach us

One failure is worth naming, because it looks like our fault and it is not. An agent that runs commands on your machine usually does so inside a sandbox with its own network allowlist, and until sustain-app.com is on that list the upload is refused before it ever leaves your laptop — a 403, with blocked-by-allowlist in the response if you look closely.

The tell is an odd asymmetry: the agent creates the album perfectly well and then cannot upload a single photo. That is the two paths differing. The tool calls travel from Claude to us and are never affected; the files leave from your own machine, through the sandbox. Only the second one is blocked. An agent describing this as a permissions problem with your folder has misread its own error.

Allow the domain wherever your agent runs:

  • The Claude desktop app. Go to Settings → Capabilities → Domain allowlist. Under Additional allowed domains type sustain-app.com and press Add, then do the same for *.sustain-app.com. The allowlist ships set to Package managers only, which is exactly why we are blocked until you add us.
  • Claude Code, in a terminal. It asks the first time a command wants a new host — choose “Yes, and don’t ask again” and it is remembered for good. To pre-allow it instead, add "allowedDomains": ["sustain-app.com", "*.sustain-app.com"] under sandbox.network in ~/.claude/settings.json, then start a fresh session; the sandbox reads its policy at startup.

If you edit settings rather than using the app’s screen, use your user settings, not a repository’s — a project-level .claude/settings.json is ignored for this particular setting, so a rule that works in the terminal can quietly do nothing in the app.

There is always the other route

None of this is load-bearing. request_photos returns an upload page next to the machine endpoint, and it works from any browser on any device. A blocked agent should hand you that link — and if it does not, ask it for one.

Los límites, ya que puede gastar créditos

Un permiso concedido no es un cheque en blanco, y el fallo que de verdad esperamos no es un atacante: es un agente en bucle sobre una llamada que interpretó como fallida.

Por eso hay límites que se aplican pase lo que pase: un tope de llamadas por minuto y un tope de procesos de pago al día. Si se alcanza cualquiera de los dos, el agente recibe un aviso claro y tú puedes seguir haciendo lo mismo desde la web.

Cada llamada queda registrada: qué herramienta, si funcionó y sobre qué. No lo que escribiste: los argumentos se guardan como huella, no como texto.

Cómo entran realmente las fotos

Esta es la parte fácil de hacer mal, y la hicimos mal primero. El diseño obvio es una herramienta que recibe las fotos como argumento — el agente nos entrega las imágenes, nosotros las almacenamos. Funciona para una foto pequeña y se derrumba para todo lo demás, porque una llamada a una herramienta es texto: la imagen tiene que codificarse dentro de la conversación, y una sola foto en resolución completa puede superar toda una ventana de contexto de IA. Dividirla en más llamadas lo empeora, ya que cada llamada permanece en la transcripción y se reenvía en cada turno posterior.

Por eso las herramientas no mueven fotos en absoluto. request_photos emite un ticket de subida —una credencial de corta duración y propósito único para un álbum— y quien realmente tenga las fotos las envía directamente a nosotros:

  • Las fotos están en tu teléfono. El ticket viene con un enlace. Lo abres, eliges tus fotos, listo. Cientos de ellas, ninguna pasa por la IA.
  • Le has dado al agente acceso a tus archivos. Entonces las sube él mismo, directamente, desde el disco a Sustain. El agente nunca lee las imágenes dentro de la conversación — solo usa el ticket.
  • Tu biblioteca está en Google Photos. import_google_photos inicia una sesión del selector, eliges en la propia ventana de Google, y Sustain las descarga del lado del servidor —hasta mil, de nuevo sin que nada pase por el agente.

El ticket caduca en 24 horas, está limitado a un álbum, y sigue respetando los límites de fotos y almacenamiento de tu plan. Es el mismo mecanismo detrás de la subida por código QR que ya ofrecemos, lo cual es buena señal: el diseño correcto para un agente resultó ser el que ya habíamos construido para humanos.

La vía de Google Photos es donde el agente realmente participa en la selección: una vez que has elegido, puede descartar los vídeos y omitir las capturas de pantalla antes de importar. Somos cuidadosos con hasta dónde llevar esa afirmación — Google nos da un nombre de archivo y un tipo de archivo y nada sobre lo que hay en una foto, así que un agente que te dijera que ha quitado las borrosas se lo estaría inventando.

La regla que mantuvimos

Mover la capacidad, no los datos. El agente recibe un ticket; las fotos van directamente desde donde viven hasta nosotros.

Nunca ve tu contraseña

Esta es la parte por la que la gente pregunta primero, y la respuesta es mejor de lo habitual en integraciones de agentes.

Un agente conectado nunca recibe una contraseña ni una clave de API. Obtiene una autorización OAuth que apruebas en una página de Sustain, con la lista exacta de lo que puede hacer, y el token detrás es un registro nuestro, no una clave firmada que no pudiéramos retirar. Desconéctalo en Ajustes → Aplicaciones conectadas y su siguiente llamada falla, no cuando el token caduque.

Un agente en tu navegador ni siquiera recibe eso. Se ejecuta en la página en la que ya iniciaste sesión, así que el navegador adjunta la misma cookie de sesión de siempre: nada que emitir, ninguna pantalla de consentimiento, nada que pegar. Solo puede actuar como la persona ya conectada en esa pestaña, y mientras dure esa sesión.

Eso también fija el techo de lo que un agente con mal comportamiento podría hacer: exactamente lo que tú mismo podrías hacer en esa pestaña, y nada más. El servidor comprueba cada permiso de forma independiente, igual que cuando haces clic tú.

Lo que deliberadamente no hará

Hay cosas que no deberían ocurrir porque un software haya decidido que sí. Las dejamos fuera a propósito:

  • No puede hacer un pedido de impresión. Eso gasta dinero real y necesita una dirección de envío. Eso lo haces tú mismo.
  • No puede procesar un pago. start_checkout crea una sesión de pago y te entrega el enlace — pagas en la propia página del proveedor. Las herramientas nunca tocan los datos de la tarjeta.
  • No puede servirse de tus archivos. Un agente de navegador físicamente no puede: una página web no puede leer tu disco. Un agente de escritorio conectado puede leer lo que tú le hayas concedido en tu propio cliente de IA, un permiso que das allí y no algo que nosotros repartamos; por nuestra parte solo puede subir con un tique que pediste crear, al álbum que ese tique indica.
  • No puede cancelar tu suscripción ni eliminar un álbum.

Una cosa que sí puede hacer es gastar créditos: build_album ejecuta la construcción de IA de pago en una sola llamada, y el coste depende de cuántas fotos sobreviven a la eliminación de duplicados. Tratamos los créditos como cualquier API de uso medido trata los tokens — la herramienta dice claramente que los gasta, y si tu saldo es insuficiente, responde con el déficit exacto para que el agente te lo diga y ofrezca recargar en lugar de fallar en silencio.

En tu navegador también — el estado honesto

Todo lo anterior es el servidor alojado, y funciona hoy sin activar nada. El resto del artículo es la otra mitad: las mismas herramientas, publicadas en la página para un agente que se ejecuta dentro de tu navegador.

Está en una fase más temprana, y preferimos decir dónde está que insinuar más de lo cierto.

WebMCP es un estándar genuinamente nuevo: Chrome lo incluye desde la versión 149 pero no lo ha activado por defecto, así que esta vía es opcional.

Cómo se ve en la práctica

Has iniciado sesión en Sustain con un agente ejecutándose en tu navegador. Dices: «Hazme un álbum de mi viaje a Italia». Lo que ocurre a continuación no es una secuencia de clics:

1

Crea el álbum

El agente llama a create_album con el nombre "Italia 2026". El editor se abre en tu pantalla — lo ves ocurrir.

2

Pide tus fotos

Llama a request_photos y obtiene un ticket de subida. Si el agente puede leer tus archivos, las sube él mismo. Si no puede, te entrega un enlace para abrir en tu teléfono. En ambos casos las fotos van directas a Sustain, no a través de la conversación.

3

Espera a que lleguen

Consulta album_status repetidamente hasta que dejan de llegar subidas, y te dice el total.

4

Te muestra un borrador gratuito

Llama a quick_place —gratis— para que tengas algo real que ver antes de gastar nada.

5

Apruebas la construcción real

Te gusta, así que llama a build_album: el proceso completo de IA que puntúa cada foto, descarta los casi duplicados, agrupa por rostro y escena, diseña las páginas y escribe los pies de foto.

Durante todo el proceso, ambos estáis mirando la misma página. El agente no opera una copia oculta del sitio en algún lugar — trabaja en tu pestaña, y cada resultado aparece delante de ti.

Pruébalo con el inspector de herramientas de Chrome (cinco minutos)

Google publica una extensión Model Context Tool Inspector exactamente para esto —se instala desde la Chrome Web Store como cualquier otra, con código fuente público. Es el camino más corto desde la curiosidad hasta un álbum terminado, y hoy es la vía que realmente te recomendaríamos.

1

Instala la extensión inspectora

Abre el listado de WebMCP — Model Context Tool Inspector en la Chrome Web Store y haz clic en Add to Chrome, luego en Add extension. Fíjala desde el icono de la pieza de puzle en la barra de herramientas para acceder rápido. Está construida por un ingeniero de Chrome y el código fuente es público; lista las herramientas que ofrece una página y te permite hablar con ellas mediante Gemini.

2

Abre Sustain e inicia sesión

Ve a sustain-app.com e inicia sesión con normalidad. Las herramientas se registran contra tu sesión — sin iniciar sesión solo verás ask_site.

3

Comprueba que las herramientas están ahí

Haz clic en el icono de la extensión mientras Sustain es la pestaña activa. Deberías ver diez herramientas listadas, desde ask_site hasta build_album. Una lista vacía significa que la opción no ha surtido efecto — confirma que dice Enabled en chrome://flags/#enable-webmcp-testing y reinicia de nuevo.

4

Pide un álbum

Pega el prompt del final de esta sección en el cuadro de chat del inspector. Verás activarse create_album, el editor abrirse en ese álbum, y request_photos devolver un enlace de subida. Sin un solo clic.

5

Envía las fotos

Abre el enlace en tu teléfono y elige tus fotos. Luego pregúntale al agente «¿ya están?» — consulta album_status y te dice el total.

6

Constrúyelo

Pídele que «las organice» para un borrador gratuito (quick_place), o «construya el álbum de verdad» para ejecutar la construcción de IA de pago (build_album). Te avisará antes si tu saldo de créditos es insuficiente.

Entonces di esto

Una vez que el inspector esté instalado y Sustain abierto delante de él, este es el prompt con el que empezar. Pégalo y observa cómo pasan las llamadas.

Se detiene deliberadamente antes de gastar nada: pide un diseño gratuito y una descripción de lo que haría una construcción de pago, así que tu primera prueba no puede sorprenderte con un cargo de créditos.

Prueba este prompt

Crea un álbum en Sustain llamado "Italia 2026" y dame después un enlace que pueda abrir en mi teléfono para subir las fotos. Cuando estén todas, organízalas para que pueda ver un borrador —no gastes créditos todavía, solo dime qué haría una construcción completa con IA.

Por qué creemos que esto importa

Hay una versión de los próximos años en la que la gente deja de visitar sitios web y empieza a pedirle a un asistente que se ocupe de ellos. En ese mundo, un sitio que solo habla en píxeles es uno que un agente interpreta mal, abandona, o descarta en favor de otro que sí puede operar.

Estar listo para agentes no es una insignia. Es la diferencia entre un asistente que puede realmente hacerte un álbum de fotos y uno que hace clics al azar, gasta tus créditos por accidente, y te entrega algo que no pediste. Preferimos ser legibles para las máquinas que cada vez más hacen las preguntas.

Además nos mantiene honestos sobre nuestro propio producto. Escribir la descripción de una herramienta te obliga a decir exactamente qué hace una acción y qué cuesta, en una frase, sin ninguna interfaz tras la que esconderse. Varias de las nuestras quedaron más claras al escribirlas.

Preguntas frecuentes

¿Listo para probarlo?

Abre tu álbum

Usamos cookies para analizar el uso del sitio y mejorar tu experiencia. Más información