Pepesto MCP
Pepesto le da a tu agente la capacidad de convertir cualquier receta (una URL, texto plano o una foto) en una cesta de productos reales de supermercado con precios en vivo, en 26 supermercados europeos. El MCP cubre la mitad del flujo de trabajo de compra de comestibles que va de la receta al carrito emparejado (analizar / buscar / mapear ingredientes a SKU / verificar catálogos).
Documentación
Servidor Pepesto MCP
Servidor MCP para la API de Pepesto — dale a tu agente la capacidad de convertir cualquier receta (una URL, texto plano o una foto) en una cesta de productos reales de supermercado con precios en vivo, en 26 supermercados europeos. El MCP cubre la mitad del flujo de trabajo receta → cesta emparejada (parsear / buscar / mapear ingredientes a SKUs / consultar catálogos); realizar el pedido real es un paso aparte — ver Dónde ocurre realmente el checkout.
Instalación rápida
Claude Desktop
Añade a claude_desktop_config.json:
{
"mcpServers": {
"pepesto": {
"command": "npx",
"args": ["-y", "@pepesto/pepesto-mcp"],
"env": { "PEPESTO_API_KEY": "pep_sk_…" }
}
}
}
Claude Code
claude mcp add pepesto -e PEPESTO_API_KEY=pep_sk_… -- npx -y @pepesto/pepesto-mcp
Obtener una clave de API
La mayoría de las herramientas necesitan una clave, pero
pepesto_predirectes pública y gratuita — funciona sin ninguna clave (el usuario final paga cuando hace el checkout en la aplicación).
-
Comienza con un paquete de créditos de pago por uso — ver https://www.pepesto.com/pricing/.
-
Genera una clave de API llamando a
/linkcon el correo que usaste en el checkout. La clave se devuelve solo una vez — guárdala inmediatamente.curl -X POST https://s.pepesto.com/api/link \ -H "Content-Type: application/json" \ -d '{"email":"you@example.com"}' -
Configura la clave en tu entorno:
export PEPESTO_API_KEY=pep_sk_…
Herramientas
| Herramienta | Endpoint | Descripción |
|---|---|---|
pepesto_oneshot | POST /oneshot | Receta → cesta emparejada en un solo paso, incluyendo un redirect_url para el checkout. |
pepesto_predirect | POST /predirect | Gratis, sin clave de API. Lista de compras → enlace profundo diferido (redirect_url); el usuario final paga cuando hace el checkout en la aplicación Pepesto. |
pepesto_parse | POST /parse | Parsea una receta (URL/texto/imagen) en ingredientes estructurados + KgToken. |
pepesto_suggest | POST /suggest | Busca en el grafo de recetas de Pepesto (más de 1M). |
pepesto_products | POST /products | Mapea KgTokens + supermercado a productos concretos con precios. |
pepesto_catalog | POST /catalog | Volcado completo de SKUs para un supermercado. Solo cuando se solicita explícitamente; guarda en caché los resultados. |
pepesto_credits | POST /credits | Consulta los créditos restantes. Gratis. |
El MCP se detiene en "cesta emparejada con precios" — ver Dónde ocurre realmente el checkout para saber cómo los usuarios completan el pedido. /session, /checkout y /link no están envueltos intencionalmente; ver Roadmap para lo que está planeado.
Ejemplos de conversaciones
Rápido: URL de receta → cesta emparejada
El camino más rápido. Una llamada a la herramienta devuelve una cesta emparejada y un enlace de checkout.
Usuario: Usa la receta de pizza margherita de BBC Good Food para armar una cesta en Tesco, y añade también agua con gas y aceite de oliva.
Asistente: [Usa
pepesto_oneshotconcontent_urls,content_text,supermarket_domain: "tesco.com"]Asistente: Cesta emparejada en Tesco. Enlace de checkout:
<redirect_url>.
Transferencia diferida gratuita → el usuario final paga (pepesto_predirect)
Cuando el cliente de la API no quiere pagar por el emparejamiento y un enlace profundo diferido es aceptable. pepesto_predirect es gratis y no necesita clave de API: devuelve al instante un enlace, y el parseo y el emparejamiento de productos ocurren de forma diferida cuando el usuario lo abre. El usuario es cobrado cuando procede al checkout en la aplicación Pepesto (si la aplicación no está instalada, se le envía primero a la tienda de aplicaciones y la lista se conserva).
Para quién es esto:
pepesto_predirectes una herramienta orientada al usuario final / agente, no un endpoint de integración para desarrolladores. Es la opción adecuada cuando una persona está chateando con un asistente (Claude Desktop, ChatGPT, etc.) y quiere transferir su lista de compras a su propio teléfono — el agente devuelve un enlace, el usuario termina (y paga) en la aplicación. Si eres un desarrollador construyendo un producto sobre Pepesto, normalmente querráspepesto_oneshot(cesta emparejada por adelantado, tú pagas) en su lugar. ¿Tienes un caso de uso de desarrollador parapredirectde todos modos? Cuéntanos — nos encantaría escucharlo.
Usa pepesto_predirect cuando el costo debe recaer en el usuario final; usa pepesto_oneshot cuando el cliente quiere la cesta emparejada por adelantado (con precios) y está dispuesto a pagar por ello.
Usuario: Aquí está mi lista de compras semanal — solo dame un enlace que pueda abrir en mi teléfono para terminar en la aplicación Pepesto.
Asistente: [Usa
pepesto_predirectconshopping_list: "2 avocados\n1 loaf of bread\n500 g tomatoes\n..."]Asistente: Listo — 🛒 Abre tu lista de compras en Pepesto → Gratis de abrir · 3 artículos listos · solo pagas en el checkout de la aplicación. Ábrelo en tu teléfono (en una computadora mostrará un código QR para escanear).
La herramienta devuelve esto como Markdown listo para mostrar — un enlace etiquetado y tocable más una breve leyenda — para que el largo redirect_url nunca se muestre como texto sin formato.
Explorar el grafo de recetas → elegir → cesta emparejada
Para indicaciones como "encuéntrame algo para cocinar", donde el agente primero busca en el grafo de recetas de Pepesto y devuelve productos emparejados con precios.
Usuario: Encuéntrame una receta vegana de pasta para dos.
Asistente: [Usa
pepesto_suggestconquery: "vegan pasta dinner for two"]Asistente: Tres opciones: Creamy Cashew Penne, Lemon Garlic Spaghetti, Roasted Veg Rigatoni. ¿Cuál prefieres?
Usuario: Ve con la primera. Cómprala en Coop (coop.ch).
Asistente: [Usa
pepesto_productscon elkg_tokende la receta elegida ysupermarket_domain: "coop.ch"]Asistente: Emparejé 8 ingredientes en Coop — anacardos CHF 4.20, penne CHF 1.95, ... — total CHF 18.40.
Parsear una receta específica → cesta emparejada
Cuando el usuario ya tiene una URL o texto de receta en mente. El MCP devuelve la lista de productos emparejados — qué hacer con ella depende de ti.
Usuario: Parsea esto y desglosa los ingredientes: https://www.bbcgoodfood.com/recipes/pizza-margherita-4-easy-steps
Asistente: [Usa
pepesto_parseconrecipe_url]Asistente: Pizza Margherita en 4 pasos fáciles — 8 ingredientes: harina de fuerza, levadura de acción rápida, ...
Usuario: Ahora empareja esos con productos de Sainsbury's.
Asistente: [Usa
pepesto_productscon elkg_tokendevuelto ysupermarket_domain: "sainsburys.co.uk"]Asistente: Emparejé 8 ingredientes en Sainsbury's — total £6.40.
Plan de comidas semanal → una cesta emparejada combinada
Múltiples kg_tokens a través de pepesto_products en una sola llamada — Pepesto combina ingredientes duplicados entre recetas.
Usuario: Planifica 5 cenas keto para la semana y empareja en Delhaize.
Asistente: [Usa
pepesto_suggestconquery: "keto dinner low carb high protein", num_to_fetch: 5]Asistente: Cinco cenas: Steak & Kale, Salmon Avocado Bowl, Zucchini Lasagna, Cauliflower Risotto, Chicken Caesar.
Usuario: Arma una lista de compras que cubra toda la semana.
Asistente: [Usa
pepesto_productscon los cincokg_tokensysupermarket_domain: "delhaize.be"]Asistente: Combinación emparejada: 24 ingredientes únicos (algunos compartidos entre recetas), total estimado €68.40 en Delhaize.
Comparar precios entre dos supermercados
Ejecuta la misma receta a través de pepesto_products para cada mercado y compara los totales.
Usuario: Parsea esta receta de almuerzo dominical.
Asistente: [Usa
pepesto_parse]Asistente: Listo: Italian Sunday Lunch, 12 ingredientes.
Usuario: Muéstrame la cesta tanto en Esselunga como en Conad para comparar.
Asistente: [Usa
pepesto_productsdos veces —supermarket_domain: "spesaonline.esselunga.it", luegosupermarket_domain: "spesaonline.conad.it"]Asistente: Esselunga: €34.20. Conad: €31.50. Conad es €2.70 más barato, principalmente en pasta y tomates.
Volcado de catálogo para análisis de mercado
Solo bajo solicitud explícita, y guarda en caché agresivamente — ver Precios y mejores prácticas abajo.
Usuario: Estoy construyendo un panel de comparación de precios. Trae el catálogo completo de Plus NL.
Asistente: Aviso —
pepesto_cataloges la llamada más costosa aquí. Solo la ejecutaré una vez; deberías guardar el resultado en caché durante al menos un día. ¿Confirmas?Usuario: Sí.
Asistente: [Usa
pepesto_catalogconsupermarket_domain: "plus.nl"]Asistente: Catálogo volcado: 1,847 SKUs en 23 categorías.
Supermercados compatibles
| # | País | Supermercado | Dominio / ID |
|---|---|---|---|
| 2 | 🇬🇧 GB | Sainsbury's | sainsburys.co.uk |
| 3 | 🇬🇧 GB | ASDA | asda.com |
| 4 | 🇬🇧 GB | Morrisons | groceries.morrisons.com |
| 5 | 🇬🇧 GB | Waitrose | waitrose.com |
| 1 | 🇬🇧 GB | Tesco | tesco.com |
| 6 | 🇳🇱 NL | Albert Heijn | ah.nl |
| 7 | 🇳🇱 NL | Jumbo | jumbo.com |
| 8 | 🇳🇱 NL | Plus NL | plus.nl |
| 9 | 🇩🇪 DE | Rewe | shop.rewe.de |
| 10 | 🇨🇭 CH | Coop CH | coop.ch |
| 11 | 🇨🇭 CH | Migros | migros.ch |
| 12 | 🇨🇭 CH | Farmy | farmy.ch |
| 13 | 🇨🇭 CH | Aldi CH | aldi-now.ch |
| 14 | 🇧🇪 BE | Colruyt | colruyt.be |
| 15 | 🇧🇪 BE | Delhaize | delhaize.be |
| 16 | 🇮🇪 IE | Tesco IE | tesco.ie |
| 17 | 🇮🇪 IE | SuperValu | shop.supervalu.ie |
| 18 | 🇮🇪 IE | Dunnes | dunnesstoresgrocery.com |
| 19 | 🇮🇹 IT | Esselunga | spesaonline.esselunga.it |
| 20 | 🇮🇹 IT | Conad | spesaonline.conad.it |
| 21 | 🇩🇰 DK | Nemlig | nemlig.com |
| 22 | 🇳🇴 NO | Meny | meny.no |
| 23 | 🇵🇱 PL | Frisco | frisco.pl |
| 24 | 🇵🇱 PL | Auchan PL | zakupy.auchan.pl |
| 25 | 🇧🇬 BG | Bulmag | bulmag.org |
| 26 | 🇧🇬 BG | eBag | ebag.bg |
¿Necesitas un supermercado que no esté en esta lista? Contacta con Pepesto.
Dónde ocurre realmente el checkout
Este MCP se detiene en "cesta emparejada con precios." No automatiza la realización del pedido en el sitio web del supermercado. Dos formas de completar el viaje:
- Aplicación Pepesto (recomendada). Abre el
redirect_urldevuelto porpepesto_oneshoten un navegador, o entrega al usuario la lista de productos emparejados depepesto_productsy dile que la reproduzca en la aplicación Pepesto — ahí es donde vive el flujo de checkout alojado, incluyendo inicio de sesión, revisión de la cesta y (para algunos mercados) pago. - El propio sitio del supermercado. El usuario puede tomar la lista de productos emparejados de
pepesto_productsy añadir los SKUs directamente en tesco.com / coop.ch / etc. Más lento, pero no se necesita cuenta de Pepesto.
Precios y mejores prácticas
Pepesto funciona con créditos simples de pago por uso — solo pagas por lo que tus agentes realmente usan, y los créditos nunca caducan, así que una recarga es tuya hasta que la gastes. También ofrecemos descuentos para estudiantes y equipos en etapas tempranas, así que saluda si eso te suena. Los precios completos por llamada y los niveles de volumen están en https://www.pepesto.com/pricing/.
Algunos consejos para aprovechar al máximo cada crédito:
pepesto_creditses gratis — llámalo en cualquier momento para una lectura rápida del saldo.pepesto_predirectes gratis y no necesita clave de API — difiere el emparejamiento y factura al usuario final en el checkout, por lo que no le cuesta nada al cliente de la API.pepesto_oneshot,pepesto_parse,pepesto_suggestypepesto_productsson las llamadas cotidianas (emparejar una receta, planificar una semana, comparar cestas) y están preciadas para el uso rutinario de agentes.pepesto_cataloghace un volcado completo de SKUs para un supermercado y es la llamada más pesada. Es la herramienta adecuada para análisis de mercado genuino o paneles de comparación de precios — solo guarda el resultado en caché durante al menos un día por supermercado. ¿No estás seguro de que lo necesitas? Cuéntanos tu caso de uso y normalmente te señalaremos un camino más barato.
Roadmap
Planeado para seguir:
pepesto_session— envolver/sessionpara que un agente pueda construir una sesión de checkout del lado de Pepesto a partir de SKUs seleccionados.pepesto_checkout— envolver/checkout, el bucle de automatización del navegador paso a paso que maneja el sitio del propio supermercado (inicio de sesión, añadir a la cesta, solicitar CAPTCHA, etc.). Esta es la pieza que falta para las compras totalmente autónomas.- Transferencia de checkout alojado — mostrar el enlace profundo de la aplicación Pepesto como un resultado estructurado de herramienta (en lugar de texto libre), para que los clientes MCP puedan renderizarlo como un botón en lugar de una URL.
Si alguno de estos te desbloquearía, cuéntanos — los moverá hacia arriba en la cola.
Desarrollo
git clone https://github.com/pepesto-solutions/pepesto-mcp.git
cd pepesto-mcp
npm install
npm run build
npm test
npm run test:coverage
Ejecuta el inspector contra la compilación local:
PEPESTO_API_KEY=pep_sk_… npm run inspector
Licencia
El servidor Pepesto MCP en este repositorio está licenciado bajo la Licencia MIT.
Despliegue
- Despliega el Pepesto MCP en Glama.