Skip to main content
Glama
fallenreds

auchan-ro

by fallenreds

AuchanMCP

Python 3.13+ License: MIT Status: personal project

MCP-коннектор к auchan.ro (румынский Ашан, платформа VTEX IO) для ИИ-ассистентов: поиск товаров, подбор доступного аналога, если нужного товара нет на складе, и работа с корзиной.

Никакого браузера в рантайме — все операции идут через прямую эмуляцию публичных REST-эндпоинтов VTEX, которые использует сам сайт. Подробности разведки и мотивация архитектурных решений — в docs/API_NOTES.md и docs/DECISIONS.md.

Неофициальный проект, не связан с Auchan и не одобрен им. Использует публичные эндпоинты их собственного сайта так же, как их использует браузер при обычном посещении auchan.ro.

Возможности

Инструмент MCP

Что делает

search_products(query, limit)

Полнотекстовый поиск по каталогу

get_product_by_url_slug(slug)

Точный товар по ссылке auchan.ro (.../<slug>/p)

find_product_or_analog(description)

Поиск под описание из списка покупок; если товара нет в наличии — отдаёт лучшие доступные аналоги

create_cart()

Создать анонимную корзину

add_to_cart(order_form_id, sku_id, quantity)

Добавить товар в корзину

get_cart(order_form_id)

Посмотреть содержимое корзины

Related MCP server: Rohlik MCP

Как это работает

AI-ассистент  ──MCP──▶  src/mcp_server.py  ──HTTP──▶  auchan.ro (VTEX REST API)
                              │
                              ├─ src/auchan_api.py   — клиент к VTEX Catalog/Checkout API
                              └─ src/matcher.py       — поиск товара под описание + аналоги

Поиск и анонимная корзина у VTEX не требуют авторизации — это подтверждено прямыми HTTP-запросами без браузера, без cookies, без заголовков логина. Авторизация (для истории заказов, My CLUB и т.п.) устроена сложнее — см. раздел ниже и docs/API_NOTES.md.

Установка

git clone <url-этого-репозитория>
cd AuchanMCP
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

Запуск

source .venv/bin/activate
python src/mcp_server.py

Подключение в Claude Code

В репозитории уже есть .mcp.json — после установки зависимостей сервер auchan-ro должен подключиться автоматически при открытии проекта.

Проверка на реальном списке покупок

source .venv/bin/activate
python scripts/test_shopping_list.py

Прогоняет ~34 позиции реального списка покупок через find_product_or_analog. Текущий результат: 28 точных совпадений, 6 аналогов, 0 полных промахов. Разбор проблемных случаев (лексическая многозначность румынского, товары, снятые с продажи) — в docs/API_NOTES.md.

Авторизация (опционально)

Поиск и корзина работают без логина — для задачи "найти товар / собрать корзину" авторизация не нужна вообще. Логин на auchan.ro идёт через OAuth-мост на Salesforce Experience Cloud, а не через обычный VTEX ID, поэтому для функций, которым всё же нужен аккаунт (история заказов, My CLUB, кросс-девайсная корзина), используется разовый логин в браузере с переиспользованием cookies, а не эмуляция логина запросами — подробности и почему именно так в ADR-0002 (docs/DECISIONS.md):

pip install playwright && playwright install chromium
python scripts/login_helper.py

Структура проекта

src/
  auchan_api.py   — HTTP-клиент к VTEX Catalog System + Checkout API
  matcher.py      — подбор товара под текстовое описание + поиск аналога
  mcp_server.py   — MCP-сервер (stdio), оборачивает клиент в инструменты
scripts/
  test_shopping_list.py — прогон по реальному списку покупок
  login_helper.py        — разовый логин в браузере -> storage_state.json
docs/
  API_NOTES.md    — разведка API, эндпоинты, авторизация, известные ограничения
  DECISIONS.md     — журнал архитектурных решений (ADR)

Известные ограничения

  • Румынский язык лексически многозначен ("roșii" — и "помидоры", и "красные") — однословные запросы без контекста могут промахнуться на похожем слове.

  • Пара позиций из тестового списка покупок пропала из каталога между датой составления списка и разведкой API — это не баг подбора, товар реально снят с продажи.

  • login_helper.py написан, но не прогонялся end-to-end — требует установки playwright отдельно от основных зависимостей.

Подробнее — в docs/API_NOTES.md.

Лицензия

MIT.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to interact with Rohlik Group's online grocery delivery services across multiple European countries, supporting product search, shopping cart management, order history analysis, and personalized meal suggestions based on purchase patterns.
    59 npm
    3
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to interact with Rohlik Group's online grocery delivery services across multiple countries, including product search, cart management, and account info.
    59 npm
    121
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables shopping Ametller Origen online groceries through Claude, allowing catalog browsing, cart management, and order history access, with payment handled directly on the retailer's site.
    MIT