프로토타입 · 미리 보기: 공식 레지스트리의 모든 서버를 담고 있으며 30분마다 동기화해요. 리뷰와 계정 기능은 다음 단계에서 열려요.
PopNx MCPAI를 쓰는 사람을 위한 MCP 서버 · 쉬운 말로 설명해요

Cellarion Wine Registry

제작자: jagduvi1버전 1.296.0i★ –i클라우드에서 실행
레지스트리 이름app.cellarion/wine-registry

설치

개요

제작자가 쓴 설명(영어 원문)

Public wine registry and guides: search wines, grapes, regions, appellations. No account.

PopNx MCP의 세 기둥

이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.

할 수 있는 일

이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.

  • 연결 방식: 클라우드에서 실행
  • 전송 방식: Streamable HTTP
  • 카테고리: 검색 및 AI 기억

설치

쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.

설치하기 전에

필요한 것

어떤 앱을 쓰세요?

위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.

웹, 데스크톱, 모바일의 Claude에서 쓸 수 있어요:

  1. Settings → Connectors 열기
  2. Add custom connector 누르기
  3. 아래 주소를 붙여 넣고 Add 누르기
  4. 로그인하라고 하면 제작자의 서비스에 로그인하기
SettingsConnectors1+ Add2https://…3
https://cellarion.app/api/mcp/public

터미널에서 이 명령어를 실행하세요

claude mcp add --transport http wine-registry https://cellarion.app/api/mcp/public

Cursor에서 열기

또는 설정을 직접 복사하기

프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요

{
  "mcpServers": {
    "wine-registry": {
      "url": "https://cellarion.app/api/mcp/public"
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

VS Code에서 열기

또는 설정을 직접 복사하기

프로젝트의 .vscode/mcp.json에 붙여 넣으세요

{
  "servers": {
    "wine-registry": {
      "type": "http",
      "url": "https://cellarion.app/api/mcp/public"
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요:

  1. 웹에서 ChatGPT 열기 → Settings → Connectors (Apps)
  2. Create 또는 Add 누르기(일부 요금제는 먼저 Advanced에서 Developer mode를 켜야 해요)
  3. 아래 주소를 붙여 넣고 이름을 정한 뒤 저장하기
  4. 로그인하라고 하면 제작자의 서비스에 로그인하기
SettingsConnectors1+ Create2https://…3
https://cellarion.app/api/mcp/public

메뉴 이름은 요금제나 시기에 따라 조금 다를 수 있어요.

선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.

이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.

할 수 있는 일

도구 이름과 설명은 서버가 2026년 11월 7일에 알려 준 그대로예요. 우리가 아니라 제작자가 쓴 글이고, 일반 텍스트로만 보여 드려요.

  • get_source_info

    Returns what Cellarion is, the version this instance is running, the open-source repository, and the license. Call this when the user asks what Cellarion is, which version they are on, whether it is open source, where to find / contribute to the code — or how to support the proje

  • search_registry

    Searches Cellarion's shared wine database (vintage-neutral wines, community data) by name, producer, region or grape. Returns up to 10 matches. Call to identify a wine the user mentions, before recommending, or to check whether a wine exists in the registry. This searches ALL kno

  • get_wine

    Full registry record for one wine: producer, region, appellation, classification, grapes, community rating, the AI tasting profile when the wine has been enriched, and the registry image (url + credit) when one is published — null means the wine has no public picture yet; to see

  • find_similar_wines

    Given a registry wine_id (or, on an authenticated connection, one of the user's bottle_ids), returns wines with the closest taste/style profile from the shared registry, using vector similarity over wine embeddings. Call for "more like this", "what else is like my favourite Barol

  • list_guides

    Cellarion's published guides and blog articles (cellar management, drink windows, storage, buying) — title, slug, excerpt and tags. Call when the user wants a how-to or background reading; follow with read_guide for the full text.

  • read_guide

    The full text of one published Cellarion guide or blog article, by slug (from list_guides). Public website content — quote or summarise freely, and link the public_url when pointing the user to it.

기본 점검i

누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검

  • ✓ 통과

    제작자와 저장소 일치

    레지스트리 이름이 도메인 cellarion.app 기준으로 확인되었어요(레지스트리가 도메인 소유를 확인해요)

  • … 아직 점검 안 함

    계속 관리되고 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • … 아직 점검 안 함

    라이선스 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • ✓ 통과

    엔드포인트 응답

    843ms 만에 응답(HTTP 200)

  • – 해당 없음

    OAuth로 로그인

    로그인 필요 없음

  • ✓ 통과

    도구 설명에 숨겨진 지시 없음

    도구 설명 6개를 읽었고, AI에게 보내는 숨겨진 지시는 없었어요

검색 및 AI 기억 카테고리의 다른 서버와 비교i

  • 이 카테고리의 다른 서버 7270개 중 0%보다 스타가 많아요
  • 이 카테고리의 다른 서버 7270개 중 97%보다 최근에 레지스트리에 공개됐어요
  • 기본 점검 결과가 이 카테고리의 다른 서버 7270개 중 100%와 같거나 더 좋아요

레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.

자주 묻는 질문

Cellarion Wine Registry, 안전한가요?

해당하는 기본 점검 3개 중 3개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.

어떤 키나 코드가 필요한가요?

레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.

내 컴퓨터에서 실행되나요, 클라우드에서 실행되나요?

제작자의 클라우드에서 실행돼요. 설치 없이 인터넷으로 연결하지만, 보내는 내용은 제작자의 서버를 거쳐요.

아직 관리되고 있나요?

GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(1.296.0)은 어제 레지스트리에 올라왔어요.

어떤 앱에서 쓸 수 있나요?

Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. URL로 연결되기 때문에, 원격 MCP 서버를 지원하는 앱(예: 개발자 모드의 ChatGPT)에서도 쓸 수 있어요.

대신 쓸 수 있는 건 뭐가 있나요?

같은 카테고리에는: Context7, Codebase Memory, Exa

대안

같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.

카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i

Context7

제작자: upstash

Up-to-date docs for AI agents

컴퓨터 또는 클라우드★ 64,224MIT어제 업데이트
설치

Codebase Memory

제작자: DeusData

Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.

내 컴퓨터에서 실행★ 48,148MIT21일 전 업데이트
설치

Exa

제작자: exa-labs

Connect AI agents to Exa for web search, content fetching, and multi-step research.

클라우드에서 실행★ 5,213MIT지난달 업데이트
설치

제작자의 README

README 열기

제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.

Cellarion

Cellarion is a hosted wine cellar app — a ready-to-use online service at [cellarion.app](https://cellarion.app). Create a free account and start tracking your bottles, organizing them into cellars and racks, searching a shared wine registry, getting sommelier-curated drink-window recommendations, and chatting with an AI sommelier about your collection. No installation, no server, no setup — just sign up and go. Every feature is free, forever.

Just want to use Cellarion? Go to [cellarion.app](https://cellarion.app) and sign up. You do not need to clone this repository, run Docker, or host anything yourself. There's also a public [demo account](https://cellarion.app) (Try the demo on the landing page) and an Android app on [Google Play](https://play.google.com/store/apps/details?id=app.cellarion.twa).

Cellarion is *also* open-source (AGPL-3.0), so if you'd prefer to run your own private instance, you can self-host it. The rest of this README covers self-hosting — see Quick Start. Most people should just use the hosted service at cellarion.app.

Hosted Service (recommended)

Cellarion is live and publicly available at:

👉 https://cellarion.app

This is the primary way to use Cellarion. Create an account and start using the full service today — every feature is free, forever. No credit card, no trial clock, no paywalled features, nothing to install or maintain. If you want to chip in, optional Supporter, Patron and Benefactor tiers (monthly or yearly) and GitHub Sponsors fund development — they unlock nothing extra, just our thanks.

Features

Your cellar

  • Bottle tracking — Log every bottle with vintage, producer, region, price, rating, and tasting notes; add more of a bottle you already own in one click
  • Cellar & rack management — Multiple cellars with customizable rack grids (up to 20×20) and a 3D cellar room view for physical placement
  • Open-bottle tracking — Open a bottle, pour glasses over days, close or finish it — with preservation-aware drink-soon nudges
  • Offline mode — Keeps a copy of your cellars, racks and bottles on the device, so the app works in the cellar with no signal: browse, find a bottle in its rack, consume/open/pour, place and move bottles, edit notes and ratings. Changes sync when you're back online — applied once (idempotency keys), and never silently over someone else's change (conflicts land in *Needs attention*). Off until the user chooses it: the installed app asks once, and Settings switches it anywhere
  • Reserved bottles — Mark bottles as "spoken for" (a birthday, a dinner) so suggestions and consume flows respect them
  • Drink-window alerts — Sommelier-curated maturity windows per wine and vintage; alerts when bottles approach peak, are in window, or slipping past it
  • Rich statistics — Charts, world choropleth map, breakdowns by country, grape, value, and drink status
  • Import & export — Bring collections from Vivino (incl. drinking history), CellarTracker, Ploc, generic CSV, or Cellarion's own JSON; export everything as JSON or a ZIP with your images

The shared registry

  • Smart search — Meilisearch-powered fuzzy search with aggressive deduplication and canonical-key matching
  • Label scanning — Snap a photo of a wine label and let AI fill in the details
  • Regional grape names — One canonical variety per grape, displayed the way the label writes it (a Douro Port shows *Tinta Roriz*, an Alentejo red *Aragonez* — both stored as Tempranillo)
  • Registry quality tooling — Duplicate/fragmentation queues, cross-field domain checks, name checks, and a sommelier correction-proposal workflow keep the shared data clean

AI

  • AI cellar chat — Ask questions about your collection — food pairings, occasion picks, cellar health (Claude + Voyage embeddings, searched in MongoDB; only ever answers from wines you actually own)
  • Connect your own AI — A built-in MCP server lets Claude, and any MCP-capable client, read and manage your cellar conversationally
  • Bring your own models — Self-hosters can point every AI feature at any OpenAI-compatible endpoint (Ollama, vLLM, LM Studio) instead of Anthropic/Voyage

Community & sharing

  • Cellar sharing — Invite others to browse or co-manage a cellar with role-based access
  • Wine lists, reviews & discussions — Build shareable lists, review wines, discuss them, follow other users, and get restock alerts
  • Tasting journal & wishlist — Keep private notes and a want-to-try list

Platform

  • Climate monitoring — Connect cellar temperature/humidity sensors (Home Assistant-friendly ingest API) with per-cellar dashboards
  • Single sign-on — Optional Google SSO, or your own OIDC provider (Pocket ID, Authentik, Keycloak, Zitadel, Authelia), alongside email/password
  • Installable app — PWA with push notifications and offline support (the service worker keeps each build for offline use), plus an Android app on Google Play
  • Internationalization — Community-translated via Weblate (help translate)
  • Privacy & GDPR — Full data export, account deletion with cooling-off, one-click email opt-out, optional self-hosted cookie-free analytics (Umami)
  • Everything free — Optional Supporter/Patron/Benefactor tiers (Stripe, monthly or yearly) and GitHub Sponsors fund development; they unlock nothing extra
  • Sommelier & admin tools — Maturity/pricing curation surfaces, wine requests, quality reports, registry health watchdog, audit log, super-admin dashboard

Stack

  • MongoDB 7 — Database (Mongoose 8)
  • Express 4 — Backend API
  • React 19 — Frontend (React Router 6, built with Vite 7)
  • Node.js 24 — Runtime
  • Meilisearch — Fuzzy search engine
  • Voyage AI — Wine embedding generation (swappable for any OpenAI-compatible endpoint); the vectors are stored in MongoDB and compared by the backend — no vector database
  • Anthropic Claude — Label scanning + AI chat (swappable, same mechanism)
  • MCP — Model Context Protocol server (/api/mcp) with OAuth, for AI assistants
  • Stripe — Optional supporter payments (hosted Checkout + Portal)
  • nginx — Serves the React SPA and proxies /api/ to the backend (internal)
  • Traefik — External reverse proxy (bring your own; not included in this Compose file)
  • Docker Compose — Containerization
  • rembg — Python/Flask background removal microservice
  • Umami — Optional self-hosted, cookie-free analytics (compose --profile analytics)

Self-Hosting (Quick Start)

This section is only for people who want to run their own private instance. If you just want to use Cellarion, head to [cellarion.app](https://cellarion.app) instead — no setup required.

Prerequisites
  • Docker + Docker Compose
Run the app

The app is routed through Traefik, so create the external web Docker network before the first up (compose declares it external — the first command fails otherwise):

git clone https://github.com/jagduvi1/Cellarion.git

cd Cellarion cp .env.example .env

Edit .env and set JWT_SECRET and MEILI_MASTER_KEY to strong random strings

docker network create web # once; skip if it already exists docker-compose up --build

URLDescription
http://localhostFrontend (React SPA) — served via Traefik
http://localhost/api/healthBackend health check
Make yourself admin

A fresh install has no admin. Register your own account in the app, then run:

docker exec cellarion-backend node src/scripts/make-admin.js <your username or email>

Sign out and in again to see the admin pages. --remove takes the role away again.

Seed demo data

After the containers are running:

docker exec cellarion-backend node src/seed-demo.js

This creates demo accounts plus a starter taxonomy, wine registry entries, and a demo cellar with sample bottles:

AccountEmailPasswordRole
Adminadmin@cellarion.appAdmin1234!demoadmin
Demo useruser@cellarion.appUser1234!demouser

These are local development credentials. Change them before deploying anywhere public.

Stop
docker-compose down          # keep data

docker-compose down -v # also remove all volumes (wipes database)

Upgrade
git pull

docker-compose up -d --build

Upgrading from v1.241.0 or earlier: Qdrant is retired. The wine vectors behind the AI cellar chat, restock suggestions and the MCP similarity tools now live in MongoDB, and the backend compares them itself — there is no vector database to run any more. After the upgrade the old qdrant container keeps running as an orphan, so its vectors can be copied over once, with no re-embedding and no embedding cost:

# dry run (counts only), then the real copy

docker-compose exec -e QDRANT_URL=http://qdrant:6333 backend node src/scripts/migrate-vectors-from-qdrant.js docker-compose exec -e QDRANT_URL=http://qdrant:6333 backend node src/scripts/migrate-vectors-from-qdrant.js --apply

then remove the old container, and later its volume

docker-compose up -d --remove-orphans docker volume ls | grep qdrant # e.g. cellarion_qdrant-data → docker volume rm cellarion_qdrant-data

  • If you had set QDRANT_API_KEY, add -e QDRANT_API_KEY= to both commands (the new compose no longer passes it).
  • Instead of copying, you can run a full embedding job in SuperAdmin → AI, which re-embeds every wine through your embedding provider.
  • If embeddings were never configured (no VOYAGE_API_KEY / EMBEDDING_PROVIDER), there is nothing to copy — just remove the old container.
  • Going back to v1.241.0 afterwards works, but run a full embedding job after that downgrade, and again after upgrading once more.

Architecture

The tree below shows the shape of the codebase — the highlights, not every file. The backend has 57 Mongoose schemas and ~65 route modules (44 top-level + admin/ + somm/), plus the MCP server.

Cellarion/

├── backend/ │ ├── server.js # Entry point │ └── src/ │ ├── app.js # Express app setup, mounting, rate limiters │ ├── config/ # db, plans, upload, aiConfig (models, prompts, limits) │ ├── middleware/ │ │ ├── auth.js # JWT + role middleware (requireAuth, requireAdmin, requireSomm) │ │ └── bottleAccess.js # requireBottleAccess(minRole) factory │ ├── models/ # 57 Mongoose schemas — core: User, WineDefinition, │ │ # Bottle, Cellar, Rack, WineVintageProfile/Price, │ │ # WineRequest, WineCorrectionProposal, BottleImage, │ │ # AuditLog, Country/Region/Appellation/Grape; │ │ # community: Discussion*, Review, JournalEntry, │ │ # WishlistItem, WineList, Follow, RestockAlert; │ │ # infra: Notification, PushSubscription, SupportTicket, │ │ # ImportSession, StripeWebhookEvent, WineEmbedding, │ │ # ClimateDevice/Reading, OAuth*, McpActionLog, … │ ├── routes/ # ~44 top-level route modules: auth (incl. Google SSO), │ │ # cellars, bottles, wines (public read), racks, chat, │ │ # stats, import, export, wineRequests, wineReports, │ │ # discussions, reviews, journal, wishlist, wineLists, │ │

앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요

PopNx에게 묻기