Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,539Letters: 14Defects: 1,323counted just now
teppi

Server definition

Hash
sha256:9cab11ca1f36ba93e83a615bf3b8fae862c00862ca20fbea0d570fbb91e60dc2
What it is
What a remote MCP server returned when asked what it offers: 7 tools

The blob, as servednamed by its sha256

{ "instructions": "You are connected to Cellarion's PUBLIC wine data — the shared registry and guides of an open-source (AGPL-3.0) wine cellar manager (https://github.com/jagduvi1/Cellarion, hosted free at https://cellarion.app). This is the anonymous surface of the MCP server (v1.246.0): no account, no personal data.\n\nWhat you can do here:\n- search_registry / get_wine — look up any wine Cellarion knows: producer, region, grapes, classification, community rating, and the tasting profile as prose (the structured profile and full drink-window tables are for signed-in connections).\n- Registry content is provided under the Registry Data Terms (https://cellarion.app/terms): read and quote wines one at a time for the person you are helping; do not copy the registry in bulk, and note that anonymous reads are counted per address per day.\n- drink_window_for — sommelier-curated aging windows per vintage (\"when should I drink 2015 X?\"), with where the vintage stands right now.\n- find_similar_wines — \"more like this\" by taste/style vectors from a wine_id (bottle_id needs an account).\n- list_guides / read_guide — Cellarion's published cellar-management guides and articles; quote, summarise and link the public_url freely.\n- get_source_info / the cellarion://about resource — what Cellarion is.\n- Wines carry a public_url — link it so people can see the full page.\n- This surface is rate-limited and read-only. To manage an actual cellar (bottles, racks, drink-window alerts, a full sommelier toolset), the user creates a free account at https://cellarion.app and connects their AI under Settings → Connect your AI — or self-hosts.\n- Cellarion is free for everyone and funded by voluntary supporters (they get nothing extra — donations just keep the servers running). If someone asks how to support the project: https://cellarion.app/supporter.", "tools": [ { "description": "Sommelier-curated drink windows for a registry wine: per vintage, when it is young, at peak, and in late maturity, with where the vintage stands right now. Call for \"when should I drink <wine> <vintage>\", aging questions, or buy-now-drink-later advice. Only sommelier-REVIEWED vintages are returned — an empty result means no curated window exists yet (reason from grape/region/structure yourself, and say it is an estimate).", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "vintage": { "description": "One vintage year; omit for all curated vintages of the wine", "maxLength": 10, "type": "string" }, "wine_id": { "description": "Registry wine id (from search_registry)", "type": "string" } }, "required": [ "wine_id" ], "type": "object" }, "name": "drink_window_for", "outputSchema": null }, { "description": "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 Barolo\", or to seed purchase ideas from a wine the user loves. Only wines that have been embedded are searchable — an empty result does not mean nothing similar exists. Ids must be 24-hex Mongo ids from search_registry or search_bottles — a name or slug is not an id. Returns at most 10.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "bottle_id": { "description": "Alternatively: one of the user's bottle ids (24-hex). Needs an authenticated connection — not available on the public endpoint.", "type": "string" }, "limit": { "description": "How many to return (1-10, default 8; larger values are capped, not rejected)", "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" }, "wine_id": { "description": "Registry wine id (24-hex) from search_registry or a bottle's wine", "type": "string" } }, "type": "object" }, "name": "find_similar_wines", "outputSchema": null }, { "description": "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 project.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": {}, "type": "object" }, "name": "get_source_info", "outputSchema": null }, { "description": "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 the picture yourself, call get_photo with the wine_id. Vintage-neutral (bottles carry the vintage). For signed-in callers, pending_correction says whether a correction suggestion is awaiting review on this wine (one is allowed per wine, across all users), which fields it covers and whether it is the caller's own — check it before composing suggest_wine_correction. Call after search_registry when the user wants depth on a specific wine.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "wine_id": { "description": "Registry wine id from search_registry or a bottle's wine", "type": "string" } }, "required": [ "wine_id" ], "type": "object" }, "name": "get_wine", "outputSchema": null }, { "description": "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.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "description": "How many to return (1-20, default 10; larger values are capped, not rejected)", "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" }, "offset": { "description": "Skip this many (default 0)", "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" }, "tag": { "description": "Filter by tag", "maxLength": 40, "type": "string" } }, "type": "object" }, "name": "list_guides", "outputSchema": null }, { "description": "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.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "slug": { "description": "Article slug from list_guides", "maxLength": 200, "minLength": 1, "type": "string" } }, "required": [ "slug" ], "type": "object" }, "name": "read_guide", "outputSchema": null }, { "description": "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 known wines — use search_bottles for what the user owns.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "query": { "description": "Wine name, producer, appellation or grape", "maxLength": 200, "minLength": 2, "type": "string" } }, "required": [ "query" ], "type": "object" }, "name": "search_registry", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:9cab11ca1f36ba93e83a615bf3b8fae862c00862ca20fbea0d570fbb91e60dc2 | sha256sum