Skip to main content
Glama
nicovlr

mcp-carrefour

by nicovlr

MCP Carrefour

Serveur MCP open-source qui connecte Carrefour Drive a Claude, Cursor, VS Code et tout client MCP.

Recherchez des produits avec les vrais prix, nutriscore et disponibilite. Gerez un panier de courses en langage naturel.

Fonctionnalites

Tool

Description

search_products

Recherche produits avec prix temps reel, nutriscore, bio, promos

get_product_details

Details d'un produit (nutrition, ingredients)

find_stores

Magasins/drives par code postal

add_to_cart

Ajout au panier

view_cart

Consultation du panier avec total

remove_from_cart

Suppression du panier

get_promotions

Promos en cours par categorie

Related MCP server: mcp-carrefour-drive

Installation

Prerequis

  • Python 3.11+

  • curl_cffi (bypass Cloudflare)

Setup

git clone https://github.com/nicovlr/mcp-carrefour.git
cd mcp-carrefour
pip install mcp httpx curl_cffi

Ajouter a Claude Code

claude mcp add carrefour -- python3 /chemin/vers/mcp-carrefour/src/server.py

Config JSON (Claude Desktop / Cursor)

{
  "mcpServers": {
    "carrefour": {
      "command": "python3",
      "args": ["/chemin/vers/mcp-carrefour/src/server.py"]
    }
  }
}

Exemples de prompts

"Cherche du lait d'avoine bio au meilleur prix"
"Fais-moi une liste de courses pour 2 personnes vegetariennes, 50EUR max"
"Quelles sont les promos sur les fruits ?"
"Ajoute 2kg de carottes et 500g de lentilles a mon panier"
"Compare les prix du lait entre Carrefour Bio et Bjorg"

Comment ca marche

  1. Session : curl_cffi imite un navigateur Chrome pour passer Cloudflare

  2. Scraping SSR : parse le routeData Nuxt (format JSON:API indexe) depuis le HTML

  3. Cache SQLite : TTL 30min pour eviter le rate limiting

  4. Throttle : 2s entre chaque requete

Donnees extraites par produit

  • Nom, marque, slug

  • Prix, prix/unite (EUR/kg, EUR/L)

  • Nutriscore (A-E)

  • Label Bio

  • Promotions

  • Note clients + nombre d'avis

  • Code EAN-13

  • Image

Architecture

mcp-carrefour/
  src/
    server.py          # Serveur MCP (7 tools)
    api/
      client.py        # Client HTTP Carrefour (curl_cffi + parsing Nuxt)
      models.py        # Product, Store, Cart, CartItem
    cache/
      cache.py         # Cache SQLite
  config/
    config.json        # Configuration utilisateur

Limitations

  • Pas d'API publique Carrefour : on parse le HTML SSR (peut casser si Carrefour change son front)

  • Rate limiting : le cache et le throttle limitent a ~30 req/min

  • Panier local uniquement (pas de sync avec un compte Carrefour)

  • Disponibilite produits = catalogue national (pas par magasin sans authentification)

Licence

MIT

Related MCP Connectors

Related MCP Servers