Inspiration
La idea
Casi todas las demos de tiendas con WebMCP funcionan igual: hay stock infinito, así que "comprar" es aburrido, el agente nomás hace clic en "añadir al carrito" y ya. Quisimos hacer algo donde eso no aplicara. En una librería de segunda mano de verdad, cada libro es único — tiene su propio desgaste, su propia dedicatoria, su propia nota olvidada en el margen. Eso hace que "apartar" el libro antes de que se agote sea la parte interesante, no solo comprarlo.
Qué hace
Es una tienda con 10 libros (inventados, ojo — no queríamos meternos en líos de derechos de autor 😅), cada uno con una sola copia disponible. El agente puede:
- Buscar por título, autor, condición del libro, o hasta por lo que dice la nota que alguien dejó escrita adentro
- Ver el detalle completo de un libro
- Leer un extracto corto antes de decidirse
- Apartar el ejemplar por 24 horas, o soltarlo si ya no lo quiere
Hay también un panelito que muestra en vivo cada acción que hace el agente (o tú mismo, clickeando) — para que se vea clarito qué está pasando "por detrás".
Cómo lo hicimos
Todo en HTML/CSS/JS puro, sin frameworks, para que fuera lo más simple posible de desplegar (literal un solo archivo). Las herramientas se registran con navigator.modelContext.registerTool() y usan las mismas funciones que ya usa la interfaz normal — o sea, no hay una versión "para humanos" y otra "para agentes", es la misma lógica para los dos. Subido a GitHub y desplegado en Netlify.
Lo que se nos complicó
Pensar en herramientas que reflejaran algo real (solo hay 1 copia de cada libro) en lugar de hacer otro catálogo genérico con stock infinito. También decidir cuánto detalle darle al agente en cada herramienta para que pudiera decidir bien sin tener que adivinar.
Lo que aprendimos
Que WebMCP se pone interesante cuando las herramientas nacen de una restricción real del negocio, no cuando nomás le pegas la API encima de una tienda ya hecha. La escasez (1 copia por libro) fue lo que le dio chiste al diseño.
Qué le seguiría
Una herramienta para "hacer una oferta" en los libros más desgastados, con el agente negociando el precio.
Hecho con: HTML, CSS, JavaScript, WebMCP, Netlify, GitHub
What it does
How we built it
Challenges we ran into
Accomplishments that we're proud of
What we learned
What's next for Entrelíneas
Built With
- css
- html
- javascript
- netlify
- webmcp
Log in or sign up for Devpost to join the conversation.