Server definition
- Hash
- sha256:70348d16ef4e77bdb0428b0f7f1c4da802d703d07dd59303845b3e3f26225ff2
- What it is
- What a remote MCP server returned when asked what it offers: 7 tools
The blob, as servednamed by its sha256
{
"instructions": "SoundCreation musical-instrument catalog (soundcreation.ro / .hu / .eu). search_products finds items by free text and/or filters (category, brand, price range, in stock, on promotion) and can sort by price or discount; get_product returns full details for one item, including the in-stock accessories used with it (companions[]) and a buying guide (who it suits, use cases, questions and answers) when we have written one; compare_products puts 2-4 items side by side, or one item next to the in-stock alternatives its guide compares it with. list_promotions answers \"what is on offer right now\"; list_open_box lists individually priced open-box / resigilat units, which are one-of-a-kind and do not appear in normal catalog listings; list_bundles lists pre-priced sets sold together for less than their parts. All prices include VAT and follow the language you ask for (ro=RON, hu=HUF, de/en=EUR). Data is live, not a nightly snapshot. Attribution: CC-BY-4.0, credit SoundCreation.",
"tools": [
{
"description": "Compare 2 to 4 products side by side - price, stock, specs, who each one suits - together with the stored spec-based comparisons between them, or pass ONE product_id with with_alternatives=true to put it next to the in-stock alternatives its buying guide compares it with. Good for \"X or Y?\", \"what is the difference between...\" and \"is there something similar but...\" questions. Records carry specs and short_description (get_product has the full description and the accessories). comparisons[] is written from the point of view of product_id against the alternative; two products with no stored comparison between them have none - compare their specs directly. Buying-guide text is Romanian for language=ro and English otherwise.",
"inputSchema": {
"properties": {
"language": {
"description": "Locale for text + pricing (ro=RON, hu=HUF, de/en=EUR). Default ro.",
"enum": [
"ro",
"hu",
"de",
"en"
],
"type": "string"
},
"product_ids": {
"description": "Catalog product ids: 2 to 4, or exactly 1 together with with_alternatives=true.",
"items": {
"type": "integer"
},
"maxItems": 4,
"minItems": 1,
"type": "array"
},
"with_alternatives": {
"description": "With exactly one product id: add the in-stock alternatives its buying guide compares it with (up to 3). Default false.",
"type": "boolean"
}
},
"required": [
"product_ids"
],
"type": "object"
},
"name": "compare_products",
"outputSchema": null
},
{
"description": "Create an order and get a Stripe payment link the customer opens to pay. Requires authentication (send a valid X-Api-Key header). Shipping to RO, HU or DE only. Prices include VAT and match get_product for the same destination.",
"inputSchema": {
"properties": {
"buyer": {
"properties": {
"email": {
"type": "string"
},
"name": {
"type": "string"
},
"phone": {
"type": "string"
}
},
"required": [
"name",
"email"
],
"type": "object"
},
"expected_total": {
"description": "Optional. If set, the call is rejected when the live total moved more than 2%.",
"type": "number"
},
"items": {
"description": "Products to buy.",
"items": {
"properties": {
"product_id": {
"type": "integer"
},
"quantity": {
"minimum": 1,
"type": "integer"
}
},
"required": [
"product_id"
],
"type": "object"
},
"type": "array"
},
"shipping_address": {
"properties": {
"city": {
"type": "string"
},
"country": {
"enum": [
"RO",
"HU",
"DE"
],
"type": "string"
},
"county": {
"type": "string"
},
"postcode": {
"type": "string"
},
"street": {
"type": "string"
}
},
"required": [
"country",
"street",
"city"
],
"type": "object"
}
},
"required": [
"items",
"buyer",
"shipping_address"
],
"type": "object"
},
"name": "create_checkout",
"outputSchema": null
},
{
"description": "Get full details for one product by id, including description, specs, stock and VAT-included localized price. When the product is NOT in stock the record carries substitutes[]: up to 5 in-stock products of the same kind in the same price band (the same alternatives the product page shows), each as a brief record with its own product_id, price and product_url - offer them instead of searching. Every record also carries companions[]: up to 8 in-stock accessories used together with this product, one per role (role is a short label such as stand, cable, strings, case; other = no specific role) - the list our add-to-cart box shows, chosen from what customers buy together and checked with AI - each as a brief record with its own product_id, price and product_url; when the customer asks what else they need or decides to buy, offer these first (empty = we have no accessory list). Products with a stored buying guide also carry buying_guide: who the product suits (audience.levels are fixed English tokens: beginner, intermediate, professional, child, teacher, gift), typical use cases, plain-language explanations of terms, questions and answers (the last one, when present, lists the accessories of companions[]), and - while the product is in stock - a spec-based comparison with up to 3 in-stock alternatives (each with its own product_id, price and product_url). The guide is Romanian for language=ro and English otherwise; it was written with AI from our product data and a sourced fact sheet.",
"inputSchema": {
"properties": {
"language": {
"description": "Locale for text + pricing. Default ro.",
"enum": [
"ro",
"hu",
"de",
"en"
],
"type": "string"
},
"product_id": {
"description": "Catalog product id.",
"type": "integer"
}
},
"required": [
"product_id"
],
"type": "object"
},
"name": "get_product",
"outputSchema": null
},
{
"description": "List bundles — pre-priced sets of products sold together for less than buying the parts separately (an instrument plus the accessories normally needed with it). Each result gives the set price, what the parts would cost separately, the saving, and exactly what is included. Good for \"what do I need to get started\" questions, where recommending one set beats listing five separate products.",
"inputSchema": {
"properties": {
"brand": {
"description": "Restrict by brand name, partial match.",
"type": "string"
},
"in_stock": {
"description": "true = only sets where every included item is in stock.",
"type": "boolean"
},
"language": {
"description": "Locale for text + pricing (ro=RON, hu=HUF, de/en=EUR). Default ro.",
"enum": [
"ro",
"hu",
"de",
"en"
],
"type": "string"
},
"limit": {
"description": "Max results (default 20).",
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"max_price": {
"description": "Highest acceptable price, response currency.",
"type": "number"
},
"min_price": {
"description": "Lowest acceptable price, response currency.",
"type": "number"
},
"offset": {
"maximum": 500,
"minimum": 0,
"type": "integer"
},
"query": {
"description": "Optional text match on the set or brand name.",
"type": "string"
},
"sort": {
"description": "Default discount (biggest saving first).",
"enum": [
"discount",
"price_asc",
"price_desc",
"newest"
],
"type": "string"
}
},
"required": [],
"type": "object"
},
"name": "list_bundles",
"outputSchema": null
},
{
"description": "List open-box / ex-display units (Romanian: \"resigilat\") — returned or opened stock sold cheaper, one entry per physical unit, each with its own price, condition note and product page. Quantities are small and often one-of-a-kind, so treat availability as immediate-only. These units are NOT part of the normal catalog listings.",
"inputSchema": {
"properties": {
"brand": {
"description": "Restrict by brand name, partial match.",
"type": "string"
},
"category": {
"description": "Restrict by category name, partial match.",
"type": "string"
},
"category_id": {
"description": "Restrict to one category id.",
"type": "integer"
},
"language": {
"description": "Locale for text + pricing (ro=RON, hu=HUF, de/en=EUR). Default ro.",
"enum": [
"ro",
"hu",
"de",
"en"
],
"type": "string"
},
"limit": {
"description": "Max results (default 20).",
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"max_price": {
"description": "Highest acceptable price, response currency.",
"type": "number"
},
"offset": {
"maximum": 500,
"minimum": 0,
"type": "integer"
},
"query": {
"description": "Optional text match on product or brand name.",
"type": "string"
},
"sort": {
"description": "Default discount (biggest reduction first).",
"enum": [
"discount",
"price_asc",
"price_desc",
"newest"
],
"type": "string"
}
},
"required": [],
"type": "object"
},
"name": "list_open_box",
"outputSchema": null
},
{
"description": "List what is discounted at SoundCreation right now, biggest reduction first. Each result carries price (current) and price_old (before the discount). Use this rather than searching product by product when the customer asks what is on offer.",
"inputSchema": {
"properties": {
"brand": {
"description": "Restrict by brand name, partial match.",
"type": "string"
},
"category": {
"description": "Restrict by category name, partial match.",
"type": "string"
},
"category_id": {
"description": "Restrict to one category id.",
"type": "integer"
},
"in_stock": {
"description": "true = only items in stock now.",
"type": "boolean"
},
"language": {
"description": "Locale for text + pricing (ro=RON, hu=HUF, de/en=EUR). Default ro.",
"enum": [
"ro",
"hu",
"de",
"en"
],
"type": "string"
},
"limit": {
"description": "Max results (default 20).",
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"max_price": {
"description": "Highest acceptable price, response currency.",
"type": "number"
},
"min_price": {
"description": "Lowest acceptable price, response currency.",
"type": "number"
},
"offset": {
"maximum": 500,
"minimum": 0,
"type": "integer"
},
"sort": {
"description": "Default discount (biggest reduction first).",
"enum": [
"discount",
"price_asc",
"price_desc",
"newest"
],
"type": "string"
}
},
"required": [],
"type": "object"
},
"name": "list_promotions",
"outputSchema": null
},
{
"description": "Search the SoundCreation catalog by free text (brand, model, category, or keywords), by filters, or both. With a query you get relevance-ranked results; with filters only you get a sorted browse (\"cheapest in-stock electric guitar under 2000\"). All prices include VAT and are locale-correct.",
"inputSchema": {
"properties": {
"brand": {
"description": "Restrict by brand name, partial match.",
"type": "string"
},
"category": {
"description": "Restrict by category name, partial match (use when you do not know the id).",
"type": "string"
},
"category_id": {
"description": "Restrict to one category id. Ids come back on every result.",
"type": "integer"
},
"condition": {
"description": "new (default) = normal catalog items. open_box = individually priced used/opened units; each result is one physical unit. bundle = pre-priced sets of several products sold together for less.",
"enum": [
"new",
"open_box",
"bundle"
],
"type": "string"
},
"in_stock": {
"description": "true = only items physically in stock and shippable now.",
"type": "boolean"
},
"language": {
"description": "Locale for text + pricing (ro=RON, hu=HUF, de/en=EUR). Default ro.",
"enum": [
"ro",
"hu",
"de",
"en"
],
"type": "string"
},
"limit": {
"description": "Max results (default 20).",
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"max_price": {
"description": "Highest acceptable price, in the response currency for the chosen language.",
"type": "number"
},
"min_price": {
"description": "Lowest acceptable price, in the response currency for the chosen language.",
"type": "number"
},
"offset": {
"description": "Skip this many results, for paging through a filtered list.",
"maximum": 500,
"minimum": 0,
"type": "integer"
},
"on_promo": {
"description": "true = only items currently discounted (price_old is the pre-discount price).",
"type": "boolean"
},
"query": {
"description": "Free-text search query. Optional if you supply at least one filter.",
"type": "string"
},
"sort": {
"description": "Default: relevance with a query, cheapest-first without one.",
"enum": [
"relevance",
"price_asc",
"price_desc",
"discount",
"newest"
],
"type": "string"
}
},
"required": [],
"type": "object"
},
"name": "search_products",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:70348d16ef4e77bdb0428b0f7f1c4da802d703d07dd59303845b3e3f26225ff2 | sha256sum