Skip to main content
Glama
Luispitik

Mercadona Skill MCP

by Luispitik

Mercadona Skill (MCP) — compra personalizada con Nutri-Score

Versión: 0.1.0 · Licencia MIT · ver CHANGELOG

Servidor MCP para montar pedidos de Mercadona desde lenguaje natural, con onboarding de usuarios nuevos (intake), priorización de Nutri-Score y ejecución en tu carrito real supervisada (nunca paga).

  • Inteligencia (catálogo, precios, Nutri-Score, alérgenos): APIs públicas de solo lectura — Mercadona + Open Food Facts.

  • Carrito: navegador visible con tu sesión (Playwright sobre tu Chrome/Edge).

  • Pago: NO existe herramienta de pago. El flujo termina en el carrito; pagas tú.

Instalación

pip install -r requirements.txt          # mcp + playwright (usa tu Chrome/Edge)

Registra el MCP en Claude Code: copia .mcp.json a la raíz de tu proyecto (o usa claude mcp add). Si la ruta relativa server.py no resuelve, pon la ruta absoluta en args. Copia commands/mercadona-pedido.md a .claude/commands/ para tener el comando /mercadona-pedido.

Related MCP server: oda-mcp

Onboarding (intake)

Un usuario nuevo responde un breve intake (código postal, nº de personas, alergias, dieta, umbral de Nutri-Score para avisos, marca blanca, ingredientes a evitar). Se guarda en profile.json y personaliza el resto: avisos, alérgenos y precios.

Herramientas del MCP (mercadona)

Capa

Herramientas

Intake

get_profile, save_profile

Catálogo

search_products, build_order, set_postal_code

Integración

import_menu (menú de tu sistema → pedido)

Nutri-Score

nutri_report, suggest_healthier

Carrito (navegador)

open_session, add_to_cart, add_order_to_cart, substitute_in_cart, view_cart, close_session

⛔ Sin checkout ni pay: por diseño no se puede pagar desde el MCP.

Integración con tu sistema (menús)

Tu generador de menús (p.ej. dietas diabéticas) alimenta la skill vía import_menu:

  • Contrato JSON (recomendado): items=[{"id": 30006, "qty": 1, "name": "...", "note": "..."}].

  • HTML: html_path/html de un menú con tabla Sección | ID | Producto | Cantidad | ….

Devuelve los productos con Nutri-Score y avisos, listos para add_order_to_cart. Así tu sistema produce el menú y la skill lo ejecuta en el carrito (supervisado).

Nutri-Score

Mercadona no publica Nutri-Score; se obtiene cruzando su ean con Open Food Facts. La skill prioriza el mejor grado entre variantes equivalentes, avisa en el umbral del perfil o peor (nutri_warnings) y propone alternativas más sanas (suggest_healthier) que puedes aplicar con substitute_in_cart.

Seguridad y honestidad

  • Nunca paga: el agente para en el carrito; el cobro lo confirma una persona.

  • Cobertura parcial: si Open Food Facts no tiene el EAN (muchos Hacendado y todo el fresco/peso variable), el grado es ? = "sin dato". No se asume nada.

  • API no oficial: Mercadona puede cambiarla sin aviso. Cachea (catalog.json) y respeta sus Términos. Apta para automatización personal, no producción crítica.

  • Verificación robusta: el carrito se valida leyendo su estado real, no fiándose del clic; reintenta lo que falte; lee siempre desde página válida.

Ficheros

  • server.py — el MCP (FastMCP). 14 herramientas.

  • mercadona_api.py — cliente del catálogo: descarga cacheada + matcher difuso.

  • nutriscore.py — Nutri-Score + alérgenos vía EAN→Open Food Facts (cacheado).

  • intake.py — perfil de usuario (onboarding) y umbral de avisos.

  • menu.py — ingesta de menús de tu sistema (HTML o JSON) → pedido.

  • commands/mercadona-pedido.md — el comando/skill para Claude Code.

  • requirements.txt, .mcp.json

Ficheros generados en uso (no se distribuyen): catalog.json, nutri_cache.json, profile.json, .mcp-chrome-profile/.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI assistants to interact with Picnic online supermarket for grocery shopping, meal planning, cart management, delivery tracking, and budget-conscious shopping in Netherlands and Germany.
    37 npm
    98
    MIT
  • A
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables agentic grocery shopping on Oda (Norway) and Mathem (Sweden) platforms through an MCP-compatible interface. Users can search for products, manage their shopping cart, and access order history using natural language commands.
    1
    MIT