SoundCreation Catalog
52,000 musical instruments: prices, deals, bundles, open-box, alternatives, accessories, guides.
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"catalog": {
"url": "https://www.soundcreation.ro/api/agent/mcp.php"
}
}
}Remote-Endpunkte
https://www.soundcreation.ro/api/agent/mcp.phpstreamable-httpWas es kann
Tool-Inventar
Tools (7)
🟢search_products(query, language, category_id, category, brand, ...)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Free-text search query. Optional if you supply at least one filter."
},
"language": {
"type": "string",
"enum": [
"ro",
"hu",
"de",
"en"
],
"description": "Locale for text + pricing (ro=RON, hu=HUF, de/en=EUR). Default ro."
},
"category_id": {
"type": "integer",
"description": "Restrict to one category id. Ids come back on every result."
},
"category": {
"type": "string",
"description": "Restrict by category name, partial match (use when you do not know the id)."
},
"brand": {
"type": "string",
"description": "Restrict by brand name, partial match."
},
"min_price": {
"type": "number",
"description": "Lowest acceptable price, in the response currency for the chosen language."
},
"max_price": {
"type": "number",
"description": "Highest acceptable price, in the response currency for the chosen language."
},
"in_stock": {
"type": "boolean",
"description": "true = only items physically in stock and shippable now."
},
"on_promo": {
"type": "boolean",
"description": "true = only items currently discounted (price_old is the pre-discount price)."
},
"condition": {
"type": "string",
"enum": [
"new",
"open_box",
"bundle"
],
"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."
},
"sort": {
"type": "string",
"enum": [
"relevance",
"price_asc",
"price_desc",
"discount",
"newest"
],
"description": "Default: relevance with a query, cheapest-first without one."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"description": "Max results (default 20)."
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 500,
"description": "Skip this many results, for paging through a filtered list."
}
},
"required": []
}🟢list_promotions(language, category_id, category, brand, min_price, ...)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"language": {
"type": "string",
"enum": [
"ro",
"hu",
"de",
"en"
],
"description": "Locale for text + pricing (ro=RON, hu=HUF, de/en=EUR). Default ro."
},
"category_id": {
"type": "integer",
"description": "Restrict to one category id."
},
"category": {
"type": "string",
"description": "Restrict by category name, partial match."
},
"brand": {
"type": "string",
"description": "Restrict by brand name, partial match."
},
"min_price": {
"type": "number",
"description": "Lowest acceptable price, response currency."
},
"max_price": {
"type": "number",
"description": "Highest acceptable price, response currency."
},
"in_stock": {
"type": "boolean",
"description": "true = only items in stock now."
},
"sort": {
"type": "string",
"enum": [
"discount",
"price_asc",
"price_desc",
"newest"
],
"description": "Default discount (biggest reduction first)."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"description": "Max results (default 20)."
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 500
}
},
"required": []
}🟢list_open_box(language, query, category_id, category, brand, ...)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"language": {
"type": "string",
"enum": [
"ro",
"hu",
"de",
"en"
],
"description": "Locale for text + pricing (ro=RON, hu=HUF, de/en=EUR). Default ro."
},
"query": {
"type": "string",
"description": "Optional text match on product or brand name."
},
"category_id": {
"type": "integer",
"description": "Restrict to one category id."
},
"category": {
"type": "string",
"description": "Restrict by category name, partial match."
},
"brand": {
"type": "string",
"description": "Restrict by brand name, partial match."
},
"max_price": {
"type": "number",
"description": "Highest acceptable price, response currency."
},
"sort": {
"type": "string",
"enum": [
"discount",
"price_asc",
"price_desc",
"newest"
],
"description": "Default discount (biggest reduction first)."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"description": "Max results (default 20)."
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 500
}
},
"required": []
}🟢list_bundles(language, query, brand, min_price, max_price, ...)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"language": {
"type": "string",
"enum": [
"ro",
"hu",
"de",
"en"
],
"description": "Locale for text + pricing (ro=RON, hu=HUF, de/en=EUR). Default ro."
},
"query": {
"type": "string",
"description": "Optional text match on the set or brand name."
},
"brand": {
"type": "string",
"description": "Restrict by brand name, partial match."
},
"min_price": {
"type": "number",
"description": "Lowest acceptable price, response currency."
},
"max_price": {
"type": "number",
"description": "Highest acceptable price, response currency."
},
"in_stock": {
"type": "boolean",
"description": "true = only sets where every included item is in stock."
},
"sort": {
"type": "string",
"enum": [
"discount",
"price_asc",
"price_desc",
"newest"
],
"description": "Default discount (biggest saving first)."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"description": "Max results (default 20)."
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 500
}
},
"required": []
}🟢get_product(product_id, language)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"product_id": {
"type": "integer",
"description": "Catalog product id."
},
"language": {
"type": "string",
"enum": [
"ro",
"hu",
"de",
"en"
],
"description": "Locale for text + pricing. Default ro."
}
},
"required": [
"product_id"
]
}🟢compare_products(product_ids, with_alternatives, language)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"product_ids": {
"type": "array",
"items": {
"type": "integer"
},
"minItems": 1,
"maxItems": 4,
"description": "Catalog product ids: 2 to 4, or exactly 1 together with with_alternatives=true."
},
"with_alternatives": {
"type": "boolean",
"description": "With exactly one product id: add the in-stock alternatives its buying guide compares it with (up to 3). Default false."
},
"language": {
"type": "string",
"enum": [
"ro",
"hu",
"de",
"en"
],
"description": "Locale for text + pricing (ro=RON, hu=HUF, de/en=EUR). Default ro."
}
},
"required": [
"product_ids"
]
}🟡create_checkout(items, buyer, shipping_address, expected_total)
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.
Eingabe-Schema
{
"type": "object",
"properties": {
"items": {
"type": "array",
"description": "Products to buy.",
"items": {
"type": "object",
"properties": {
"product_id": {
"type": "integer"
},
"quantity": {
"type": "integer",
"minimum": 1
}
},
"required": [
"product_id"
]
}
},
"buyer": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"email": {
"type": "string"
},
"phone": {
"type": "string"
}
},
"required": [
"name",
"email"
]
},
"shipping_address": {
"type": "object",
"properties": {
"country": {
"type": "string",
"enum": [
"RO",
"HU",
"DE"
]
},
"street": {
"type": "string"
},
"city": {
"type": "string"
},
"postcode": {
"type": "string"
},
"county": {
"type": "string"
}
},
"required": [
"country",
"street",
"city"
]
},
"expected_total": {
"type": "number",
"description": "Optional. If set, the call is rejected when the live total moved more than 2%."
}
},
"required": [
"items",
"buyer",
"shipping_address"
]
}Empfohlene Prompts
search_productssearch_productsget_productget_productlist_promotionsCommunity
Nachweis