Skip to main content
Glama

๐Ÿงช Open Cosmetics / ๅผ€ๆ”พ็พŽๅฆ†ๆ•ฐๆฎ

B2B ๅŒ–ๅฆ†ๅ“ๆ•ฐๆฎ MCP + Next.js โ€” ไธญๅ›ฝ + ๆฌง็›Ÿ + ็พŽๅ›ฝ + ๅˆๆˆ็”Ÿ็‰ฉ ยท 8 ็ปดๅบฆๅŽŸๆ–™ๆ•ฐๆฎๅบ“ ยท 65 ้ฃŽ้™ฉ่ง„ๅˆ™ ยท Claude / GPT ๅฏ็›ดๆŽฅ่ฐƒ็”จ็š„ MCP server

B2B cosmetics data MCP + Next.js โ€” China + EU + US + synthetic biology ยท 8-dim ingredient DB ยท 65 risk rules ยท MCP server callable from Claude / GPT

DuckDB Next.js MCP License: CC-BY 4.0 GitHub stars i18n


๐ŸŒ Bilingual / ๅŒ่ฏญ

The site supports 3 display modes, switchable from the nav bar:

  • ๐ŸŒ ไธญ+EN (default) โ€” both languages

  • ๐Ÿ‡จ๐Ÿ‡ณ ไธญๆ–‡ โ€” Chinese only

  • ๐Ÿ‡บ๐Ÿ‡ธ EN โ€” English only

API responses include a lang field; pass ?lang=en or ?lang=zh (or Cookie: opencosmetics_lang=...) to switch.


Related MCP server: BeauticsLab MCP

โœจ Features / ็‰นๆ€ง

EN

ไธญ

๐Ÿ‡ช๐Ÿ‡บ EU ๆณ•่ง„

50,169 CosIng + 1,927 regulatory (Annex II/III/IV/V/VI)

50,169 CosIng + 1,927 ็›‘็ฎก (Annex II/III/IV/V/VI)

๐Ÿ‡จ๐Ÿ‡ณ ไธญๅ›ฝๆณ•่ง„

8,985 NMPA IECIC I + 2 IECIC II + 113 paragraphs adjustments

8,985 NMPA IECIC I + 2 IECIC II + 113 ๆฎต่ฐƒๆ•ด

๐Ÿ‡บ๐Ÿ‡ธ FDA ไบ‹ไปถ

85,511 cosmetic events + 4-dim aggregation

85,511 ๅŒ–ๅฆ†ๅ“ไบ‹ไปถ + 4 ็ปดๅบฆ่šๅˆ

๐Ÿงฌ ๅˆๆˆ็”Ÿ็‰ฉ

4 listed companies (Juzi/Jinbo/Huaxi/Chuangjian)

4 ไธŠๅธ‚ (ๅทจๅญ/้”ฆๆณข/ๅŽ็†™/ๅˆ›ๅฅ)

โš–๏ธ ้ฃŽ้™ฉ่ง„ๅˆ™

65 rules ร— 7 categories (compat/pH/conc/pop/region/synbio/FDA)

65 ่ง„ๅˆ™ ร— 7 ็ฑป (ๅ…ผๅฎน/pH/ๆต“ๅบฆ/็‰นๆฎŠไบบ็พค/ๅŒบๅŸŸ/ๅˆๆˆ็”Ÿ็‰ฉ/FDA)

๐Ÿ“‹ ๅคšๅœฐๅŒบๅˆ่ง„

CN / EU / US / KR / JP / ASEAN

CN / EU / US / KR / JP / ASEAN

๐Ÿ›ก๏ธ GB 7916-2026

First mandatory national standard (effective 2028-01-01)

้ฆ–ไธชๅผบๅˆถๆ€งๅ›ฝๆ ‡ (2028-01-01 ๅฎžๆ–ฝ)

๐Ÿค– MCP

TypeScript SDK stdio + HTTP, 4 tools

TypeScript SDK stdio + HTTP, 4 ๅทฅๅ…ท

๐Ÿš€ Quick Start / ๅฟซ้€Ÿๅผ€ๅง‹

1. Web (5 minutes / 5 ๅˆ†้’Ÿ)

git clone https://github.com/AndyZhuang/opencosmetics.git
cd opencosmetics
npm install
npm run dev
# โ†’ http://localhost:3000

2. MCP server (Claude Desktop)

// ~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "opencosmetics": {
      "command": "node",
      "args": ["/path/to/opencosmetics/mcp-server/dist/index.js"]
    }
  }
}

3. Direct DuckDB

duckdb data/bebd.duckdb
> SELECT * FROM cn_iecic_i WHERE inci_name ILIKE '%RETINOL%' LIMIT 5;
> SELECT * FROM annex_ii_prohibited WHERE LOWER("Chemical name / INN") LIKE '%nitroglycerin%';

๐Ÿ“Š Data Scale / ๆ•ฐๆฎ่ง„ๆจก

Table

Records

Source

cosing

50,169

EU CosIng (unified)

cosing_lite

28,354

beauteeru (PubChem)

cosing_obf

24,127

OBF CosIng full

annex_ii_prohibited

1,431

EU Banned

annex_iii_restricted

309

EU Restricted

annex_iv_colorants

153

EU Colorants

annex_v_preservatives

56

EU Preservatives

annex_vi_uv_filters

31

EU UV Filters

cn_iecic_i

8,985

NMPA Existing

cn_iecic_ii

2

NMPA New Ingredients

cn_iecic_adjustments

113 paragraphs

NMPA 2025-06-23

fda_cosmetic_events_*

85,511

FDA Cosmetic Events

companies.json

4

ๅทจๅญ/้”ฆๆณข/ๅŽ็†™/ๅˆ›ๅฅ

rules.json

65 rules

compat/pH/conc/pop/region/synbio/FDA

Total: ~130K+ records + 65 risk rules + 4 companies

๐Ÿค– MCP Tools / 4 ๅทฅๅ…ท

Tool

Args

EN

ไธญ

ingredient_query

q: string

Cross-source query (CN + EU + INCI)

่ทจๆบๆŸฅ่ฏข (CN + EU + INCI)

formula_review

ingredients: string[], context: {population, region}

65-rule review

65 ่ง„ๅˆ™ๅฎกๆŸฅ

compliance_check

ingredient: string, regions: string[]

Multi-region compliance

ๅคšๅœฐๅŒบๅˆ่ง„ๆ‰ซๆ

synbio_company

id?: string

4 listed companies metadata

4 ไธŠๅธ‚ๅ…ฌๅธๅ…ƒๆ•ฐๆฎ

Example / ็คบไพ‹ (curl):

# Formula review / ้…ๆ–น้ฃŽ้™ฉๅฎกๆŸฅ
curl -X POST http://localhost:3000/api/risk/check \
  -H "Content-Type: application/json" \
  -d '{"ingredients": ["RETINOL", "AHA", "VITAMIN_C"], "context": {"population": "pregnant", "region": "CN"}}'
# โ†’ {"summary": "REJECT", "block_count": 3, "warn_count": 5, "findings": [...], "lang": "both"}

๐Ÿ“‚ Project Structure / ้กน็›ฎ็ป“ๆž„

opencosmetics/
โ”œโ”€โ”€ app/                          # Next.js 15 App Router
โ”‚   โ”œโ”€โ”€ page.js                   # Home: 5 sources + Killer Finding
โ”‚   โ”œโ”€โ”€ ingredients/              # Ingredients (50K)
โ”‚   โ”œโ”€โ”€ regulatory/               # EU Regulatory
โ”‚   โ”œโ”€โ”€ fda/                      # FDA 85K events
โ”‚   โ”œโ”€โ”€ china/                    # ๐Ÿ‡จ๐Ÿ‡ณ NMPA 8,985 + GB 7916-2026
โ”‚   โ”œโ”€โ”€ synbio/                   # ๐Ÿงฌ Juzi/Jinbo/Huaxi/Chuangjian
โ”‚   โ”œโ”€โ”€ risk/                     # โš–๏ธ 65-rule review
โ”‚   โ””โ”€โ”€ api/
โ”‚       โ”œโ”€โ”€ mcp/route.js          # MCP HTTP entry
โ”‚       โ”œโ”€โ”€ china/ingredient/     # Chinese ingredient query
โ”‚       โ”œโ”€โ”€ synbio/companies/     # Synbio companies
โ”‚       โ”œโ”€โ”€ risk/check/           # Risk review
โ”‚       โ”œโ”€โ”€ regions/              # Multi-region compliance
โ”‚       โ””โ”€โ”€ stats/                # Aggregate stats
โ”œโ”€โ”€ lib/
โ”‚   โ”œโ”€โ”€ db.js                     # DuckDB singleton + risk engine
โ”‚   โ””โ”€โ”€ i18n.js                   # i18n dictionary (zh/en/both)
โ”œโ”€โ”€ components/
โ”‚   โ”œโ”€โ”€ LangSwitcher.js           # 3-state language switcher
โ”‚   โ””โ”€โ”€ Bilingual.js              # Bilingual field component
โ”œโ”€โ”€ data/
โ”‚   โ”œโ”€โ”€ bebd.duckdb               # 17 MB โ€” 25 tables (EU+CN+US)
โ”‚   โ”œโ”€โ”€ companies.json            # 4 synbio companies
โ”‚   โ””โ”€โ”€ rules.json                # 65 risk rules
โ”œโ”€โ”€ mcp-server/                   # TypeScript stdio MCP server
โ”‚   โ”œโ”€โ”€ src/index.ts              # 4 tools
โ”‚   โ”œโ”€โ”€ dist/index.js             # 11.3 KB compiled
โ”‚   โ””โ”€โ”€ package.json
โ”œโ”€โ”€ scripts/                      # Data ingest pipeline
โ”‚   โ”œโ”€โ”€ 01_download_sources.py
โ”‚   โ””โ”€โ”€ 02_merge_duckdb.py
โ””โ”€โ”€ docs/
    โ”œโ”€โ”€ ARCHITECTURE.md
    โ””โ”€โ”€ MCP.md

๐Ÿ›ฃ๏ธ Roadmap / ่ทฏ็บฟๅ›พ

Q3 2026 (v0.2.0 โ€” DONE / ๅทฒๅฎŒๆˆ โœ…)

  • 5 sources EU + NMPA + FDA + 4 synbio companies + 65 rules (v0.2.0)

  • Bilingual UI (zh + en) + 3-mode language switcher (v0.2.1)

Q4 2026

  • 1,284 banned + 109 plant/animal prohibited + STSC 2015 4 tables

  • KR KCID 20,530 / JP JCIA 16,152 / ASEAN 1,870

  • MCP Pro tier auth ($99/mo 100K req)

  • Enterprise tier ($999/mo SLA)

Q1 2027

  • LLM-based auto-formulation

  • Market-comp analysis + differentiation suggestions

๐Ÿ“œ License / ่ฎธๅฏ่ฏ

  • Data / ๆ•ฐๆฎ: CC-BY 4.0 (per-source attribution in data/sources.csv)

  • Code / ไปฃ็ : MIT

  • Docs / ๆ–‡ๆกฃ: CC-BY 4.0

๐Ÿ™‹ Maintainer / ็ปดๆŠค

Related MCP Connectors

Related MCP Servers