Mercadona Skill MCP

Mercadona Skill MCP

Enables personalized Mercadona grocery orders via natural language, with Nutri-Score prioritization and supervised cart execution (no payment). Supports user intake, product search, and integration with external menu systems.

Category
访问服务器

README

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

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.

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/.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选