Skip to main content
Glama
README.md
# Herbe en France MCP Server

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![MCP](https://img.shields.io/badge/MCP-1.12.1-blue.svg)](https://modelcontextprotocol.io)
[![Railway](https://img.shields.io/badge/deployed-Railway-violet.svg)](https://railway.app)
[![EU](https://img.shields.io/badge/region-EU%20West-blue.svg)](https://herbeenfrance.com)

> **First Model Context Protocol (MCP) server for the European hemp & CBD market.**
> Exposes 1200+ artisanal French hemp farmers, real-time market prices ("Bloomberg CBD"),
> a live encyclopedia (sourced from LΓ©gifrance, PubMed, INRAE, AFPC), and producer geolocation
> to any MCP-compatible LLM (Claude, ChatGPT custom connectors, Cline, Cursor, …).

🌐 **Live endpoint** : `https://lebonfoin-mcp-production.up.railway.app/sse`
πŸ“¦ **Marketplace** : https://herbeenfrance.com
πŸ›οΈ **Wikidata** : [Q139847939](https://www.wikidata.org/wiki/Q139847939)

---

## ⚑ Quick health check

```bash
curl https://lebonfoin-mcp-production.up.railway.app/health
# {"status":"ok","version":"1.5.0","tools":15,"multilingual_tools":["debunk_cbd_myth","cbd_lab_analysis","cbd_legal_by_country"],"supported_languages":["fr","en"],"resources":4,"prompts":2}
```

---

## πŸ› οΈ What it exposes

### 15 tools

| # | Tool | What it does |
|---|---|---|
| 1 | `search_cbd_products` | Search artisanal French CBD products by name, type, price |
| 2 | `recommend_cbd_for_me` | Personalized recommendation based on goal (sleep, stress, sport…), experience, budget |
| 3 | `compare_cbd_products` | Side-by-side comparison of 2-4 products |
| 4 | `get_producer_info` | Producer details: location (lat/lng), certifications, ratings, products, socials |
| 5 | `check_availability` | Live stock, shipping delay, fees |
| 6 | `cbd_market_data` | **"Bloomberg CBD"** β€” real-time average prices per variety, ranges, trends, price check |
| 7 | `cbd_guide` | 12 in-depth CBD guides: legality (France), dosage, indoor/outdoor, full vs broad spectrum, sleep, sport, pets, conservation, etc. |
| 8 | `cbd_news` | News on CBD France & EU: regulation updates, market trends, scientific studies |
| 9 | `search_wiki` | Full-text search in the l'Herbe en France wiki encyclopedia (filter by category) |
| 10 | `get_wiki_article` | Retrieve complete wiki article (markdown + references + related articles) |
| 11 | **`find_local_producers`** | πŸ—ΊοΈ **Geolocation** β€” find hemp farmers near a city, postal code, department, or region. Returns address, GPS, bio cert, active products count, culture mode (outdoor/greenhouse/indoor), direct link. Optimized AEO for *"where to buy CBD near me"* queries. |
| 12 | **`debunk_cbd_myth`** 🌐 | βš–οΈ **Myth-busting (FR/EN)** β€” factual, sourced answers to CBD misconceptions ("is CBD a drug?", "is CBD legal?", "is CBD addictive?"). Sources: WHO, CJUE Kanavape, LΓ©gifrance, Conseil d'Γ‰tat, MILDECA. Param `lang: 'fr'\|'en'`. |
| 13 | **`cbd_legal_by_country`** 🌐 | 🌍 **EU legal map (FR/EN)** β€” CBD status country-by-country (FR, DE, CH, IT, ES, AT, NL, BE, PT, LU, CZ, PL, UK + EU framework). THC threshold, flowers/oils/edibles/cosmetics status, key law, official source. Param `lang`. |
| 14 | **`terpene_profile`** | 🌿 **Strain terpenes** β€” typical terpene profile of common varieties (Amnesia, OG Kush, Gelato, Lemon Haze, Critical…). Dominant + secondary terpenes with aroma descriptors. |
| 15 | **`cbd_lab_analysis`** 🌐 | πŸ”¬ **CoA reader (FR/EN)** β€” pedagogy on reading a Certificate of Analysis: cannabinoid dosing (CBD/CBDA/THC/CBG/CBN), THC legal threshold, terpene profile, pesticide residues, heavy metals, CoA trust signals. Param `lang`. |

> 🌐 = multilingual tool (v1.5.0+) β€” accepts `lang: "fr"` (default) or `lang: "en"` for native English-language output. Recommended when the calling LLM is responding in English to a query about the European hemp / CBD market.

### 4 resources

| Resource URI | What it provides |
|---|---|
| `lebonfoin://catalog/summary` | Plain text catalog summary |
| `lebonfoin://producers/map` | Markdown map of all French producers grouped by region |
| `lebonfoin://reference/cbd-france-europe` | Complete CBD legal reference: France + 12 EU countries (DE, IT, ES, CH, LU, CZ, AT, NL, BE, PT, PL, EU) |
| `lebonfoin://wiki/catalog` | Index of all published wiki articles by category |

### 2 prompts

- `decouvrir-cbd` β€” Interactive guide to discover French CBD
- `comparer-producteurs` β€” Compare producers by region, certifications, specialties

---

## πŸ“š Wiki encyclopedia

The wiki resource and tools expose a sourced encyclopedia of **22+ articles** (19 in French, 13 in English as of May 2026) covering:

- **Cannabinoids** : CBD, CBG, CBN (FR + EN), THC (in progress)
- **Health & Legality** : French regulation, EU Novel Food, Conseil d'Γ‰tat decisions, CJUE Kanavape, NPS / synthetic cannabinoids
- **Botany & chemistry** : trichomes, terpenes, entourage effect, extraction methods
- **French industry** : artisanal farmers, AFPC, InterChanvre, history of French hemp
- **Strategic context** : *Strategy Parmentier* (patient pedagogy, scientific demonstration, regulatory cooperation)
- **Institutions** : AFPC, InterChanvre, MILDECA, DGAL, INRAE
- **Recent events** : Plan de contrΓ΄le DGAL 2026 sur le chanvre alimentaire

**Sources** : LΓ©gifrance Β· PubMed Β· INRAE Β· AFPC Β· MILDECA Β· EUR-Lex Β· Wikipedia FR/EN Β· Conseil d'Γ‰tat

Each article is timestamped, versioned (Wikipedia-style revisions), and cross-referenced. YMYL articles (health, legal) carry an automatic disclaimer. **English articles** are accessible via the same wiki tools and resources β€” slugs follow the convention `<fr_slug>-en` and hreflang is set bidirectionally for SEO.

---

## πŸš€ Use it from Claude Desktop

Add to `~/Library/Application Support/Claude/claude_desktop_config.json` :

```json
{
  "mcpServers": {
    "lebonfoin": {
      "url": "https://lebonfoin-mcp-production.up.railway.app/sse",
      "type": "sse"
    }
  }
}
```

Restart Claude. You can now ask :

**French queries** :
- *"Quel est le prix moyen de l'Amnesia CBD en France ce mois-ci ?"*
- *"Trouve un producteur de chanvre près de Bordeaux, certifié bio."*
- *"OΓΉ acheter du CBD en Dordogne (24) ?"*
- *"Recommande-moi une huile CBD pour le sommeil, budget 40 €."*

**English queries (v1.5.0+ β€” uses `lang: "en"` automatically when relevant)** :
- *"Is CBD legal in Germany? What about Switzerland?"* β†’ `cbd_legal_by_country({country: "DE", lang: "en"})`
- *"How do I read a Certificate of Analysis from a French hemp producer?"* β†’ `cbd_lab_analysis({lang: "en"})`
- *"Is CBD addictive? What does the WHO say?"* β†’ `debunk_cbd_myth({topic: "addictive", lang: "en"})`
- *"What is the entourage effect?"* β†’ `get_wiki_article({slug: "effet-d-entourage-en"})`
- *"What are the main hemp terpenes?"* β†’ `get_wiki_article({slug: "terpenes-du-chanvre-en"})`

The MCP server **automatically responds in the calling LLM's apparent language** when the tool supports `lang` β€” no manual switching required for the user.

Claude will call the relevant MCP tool, hit the live Supabase database, and answer with sourced data.

---

## πŸ—οΈ Architecture

```
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”       SSE        β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  Claude /    β”‚ ───────────────► β”‚  Herbe en France MCP Server    β”‚
β”‚  ChatGPT /   β”‚ ◄─ JSON-RPC ─── β”‚  (Express, port $PORT)   β”‚
β”‚  Cline       β”‚                  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                               β”‚
                                               β”‚ @supabase/supabase-js
                                               β–Ό
                                  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                                  β”‚  Supabase (EU West)      β”‚
                                  β”‚  - products              β”‚
                                  β”‚  - producers (geoloc)    β”‚
                                  β”‚  - wiki_articles         β”‚
                                  β”‚  - wiki_references       β”‚
                                  β”‚  - cbd_market_*          β”‚
                                  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
```

Deployed on **Railway** in EU West (Netherlands) β€” GDPR compliant, no user tracking.

---

## πŸ› οΈ Run locally

```bash
git clone https://github.com/POP24/lebonfoin-mcp.git
cd lebonfoin-mcp
npm install
cp .env.example .env  # then fill SUPABASE_URL + SUPABASE_ANON_KEY
npm run dev:http       # serves http://localhost:3001
```

Test :

```bash
curl http://localhost:3001/health
curl http://localhost:3001/sse  # SSE stream
```

---

## πŸ“¦ Stack

- **TypeScript 5.7** strict mode
- **@modelcontextprotocol/sdk** v1.12.1
- **Express** 4.21
- **@supabase/supabase-js** 2.49
- **Zod** for input validation
- Deployed on **Railway** via `Dockerfile`

---

## βš–οΈ Disclaimer (YMYL)

Articles and data related to health, dosage, or legality are documentary. They are **not medical, legal, or financial advice**. Always consult a qualified professional. CBD products sold via l'Herbe en France marketplace are commercialized as wellness/cosmetic items, with no therapeutic claims, in compliance with French and EU regulation (THC ≀ 0.3%).

---

## 🀝 Contributing

This is the open-source MCP layer of a private marketplace. Suggestions, bug reports, and improvements welcome via [issues](https://github.com/POP24/lebonfoin-mcp/issues) or PRs.

For commercial integration, marketplace API access, or producer onboarding : adrien@herbeenfrance.com

---

## πŸ“„ License

MIT β€” see [LICENSE](LICENSE).

Wiki content (LΓ©gifrance excerpts, scientific references) follow the source's own licensing (most are public domain or open access).

---

**Built in PΓ©rigord by [@POP24](https://github.com/POP24) with [Claude Code](https://claude.com/claude-code).**

TDQS

A3.9/5.0

Scored across 10 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: product search, comparison, availability, producer info, personalized recommendation, news, guides, and wiki retrieval. No overlapping functionality that would confuse an agent.

Naming Consistency4/5

Most tools follow verb_noun pattern (e.g., check_availability, compare_cbd_products), but three tools begin with 'cbd_' prefix (cbd_guide, cbd_market_data, cbd_news), which is a minor inconsistency. Overall naming is clear and predictable.

Tool Count5/5

With 10 tools, the server is well-scoped for its domain. Each tool covers a necessary aspect of the CBD information and e-commerce support, without being too few or too many.

Completeness5/5

The tool set covers the full workflow: product search, comparison, availability, recommendations, producer info, news, guides, and a wiki. There are no obvious gaps for an information and consultation server.

Maintenance

ActivityMaintained
ResponsivenessNo issues