accueil / serveurs / Fichiers & Documents / com.moltlinestudio/shopify
com.moltlinestudio/shopify
serveur MCP (Model Context Protocol) · moltline-shopify 1.1.0
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que com.moltlinestudio/shopify est sûr ?
Au dernier audit MCP Hub, le serveur MCP « com.moltlinestudio/shopify » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 6 outils
- bulk_price_change≈ 507 tokens
Apply one pricing rule across a list of prices and show the effect. PREMIUM (license). Percentage first, then the flat amount, then rounding — stated explicitly because the order changes the answer. Typical input {"prices": [19.99, 24.5], "change_pct": 10, "charm_ending": ".99"} returns {"rows": [{"was": 19.99, "now": 21.99}, {"was": 24.5, "now": 26.99}], "total_was": 44.49, "total_now": 48.98, "uplift_pct": 10.09}. Use when repricing a catalogue before export. Not for what a price nets you after Shopify's fees — that is payout_estimate. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": "<what is wrong and how to fix it>"} (for example {"error": "prices must contain at least one price"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Paramètres, retour & exemple (5)
Paramètresprices· array · requis
Current prices, at least one, each greater than 0.round_to· number · optionnel
Rounding increment applied last, e.g. 0.01 or 0.05. Default 0.01.change_pct· number · optionnel
Percentage change applied first, e.g. 10 to raise by 10% or -5 to cut by 5%. Default 0.change_flat· number · optionnel
Flat amount applied after the percentage. Default 0.charm_ending· string · optionnel
Force every price to end in these cents, e.g. ".99" or ".95". Applied after rounding. Empty by default.
Exemple d'appel{"name": "bulk_price_change", "arguments": {"prices": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - metafield_key_check≈ 416 tokens
Validate a metafield namespace and key before you define it. FREE. Shopify metafield namespaces and keys are lowercase alphanumerics and underscores; a capital letter or a dash is rejected at definition time, usually after the rest of the import has already run. Typical input {"namespace": "custom", "key": "Care-Instructions"} returns {"ok": false, "problems": ["key: dashes and capitals are not allowed"], "suggested_key": "care_instructions"}. Use when designing metafields. Not for the CSV column that carries them — that is product_csv_check. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": "<what is wrong and how to fix it>"}. Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Paramètres, retour & exemple (3)
Paramètreskey· string · requis
The metafield key, e.g. "care_instructions".namespace· string · requis
The metafield namespace, e.g. "custom".value_type· string · optionnel
The intended metafield type, echoed back for your record, e.g. "single_line_text_field". Not validated against Shopify's type list, which changes.
Exemple d'appel{"name": "metafield_key_check", "arguments": {"key": "texte", "namespace": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - payout_estimate≈ 466 tokens
Estimate what actually lands in the bank after processing fees. PREMIUM (license). Typical input {"order_total": 84.5, "fee_pct": 2.9, "fee_fixed": 0.3, "orders": 120, "refund_rate_pct": 4} returns {"gross": 10140.0, "fees": 330.06, "refunds": 405.6, "net_payout": 9404.34, "effective_fee_pct": 3.26}. Use for cash-flow planning. Not as an authoritative fee schedule: rates depend on your plan, country and card mix, so pass your own. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": "<what is wrong and how to fix it>"}. Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Paramètres, retour & exemple (5)
Paramètresorders· integer · optionnel
How many orders to model. Default 1.fee_pct· number · optionnel
Percentage fee per transaction. Default 2.9 — a common published rate, not a promise about your account.fee_fixed· number · optionnel
Fixed fee per transaction. Default 0.30.order_total· number · requis
Value of one order including anything the processor takes a percentage of. Must be greater than 0.refund_rate_pct· number · optionnel
Share of order value refunded, as a percentage. Default 0.
Exemple d'appel{"name": "payout_estimate", "arguments": {"order_total": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - product_csv_check≈ 459 tokens
Check a product CSV's header row against Shopify's current columns. FREE. Catches the failure that wastes the most time: a template copied from an out-of-date guide, using column names Shopify renamed. Typical input {"header_row": ["Handle", "Title", "Body (HTML)", "Variant Price"]} returns {"ok": false, "missing_required": [], "renamed": [{"found": "Handle", "use": "URL handle"}, ...], "unrecognised": [], "verdict": "..."}. Use before an import, on the header row alone. Not for whether the values in the rows are valid — check a handle with url_handle and a metafield key with metafield_key_check. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": "<what is wrong and how to fix it>"} (for example {"error": "header_row must contain at least one column name"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Paramètres, retour & exemple (2)
Paramètresmode· string · optionnel
"new" when creating products, where Shopify requires only Title; "update" when changing existing ones, where it also requires URL handle. Default "new".header_row· array · requis
The CSV's first row as a list of column names, exactly as written in the file, e.g. ["Handle", "Title", "Variant Price"].
Exemple d'appel{"name": "product_csv_check", "arguments": {"header_row": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - url_handle≈ 388 tokens
Turn a product title into a valid, unique Shopify URL handle. FREE. Shopify handles are lowercase, may contain letters, numbers and dashes, and may not contain spaces. Typical input {"title": "Men's Merino Wool Socks (2-Pack)"} returns {"handle": "mens-merino-wool-socks-2-pack", "valid": true, "changed": true, "collisions": []}. Use when generating handles for an import, or checking one you already have. Not for validating a whole header row — that is product_csv_check. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": "<what is wrong and how to fix it>"} (for example {"error": "title must not be empty"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Paramètres, retour & exemple (2)
Paramètrestitle· string · requis
The product title or a candidate handle, e.g. "Men's Merino Wool Socks".existing· ? · optionnel
Handles already used in the store or the file, so a collision can be reported and a suffixed alternative suggested. Optional.
Exemple d'appel{"name": "url_handle", "arguments": {"title": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - variant_matrix≈ 516 tokens
Count the variants a set of options produces, and flag the ceilings. FREE. Option counts multiply, so three modest lists become a number nobody intended. Typical input {"options": {"Size": ["S", "M", "L"], "Colour": ["Black", "Navy"]}} returns {"option_count": 2, "variant_count": 6, "within_limits": true, "per_option": {"Size": 3, "Colour": 2}}. Use before building an import file, to find out whether the catalogue needs splitting into several products. Not for validating the resulting CSV's columns — that is product_csv_check. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": "<what is wrong and how to fix it>"} (for example {"error": "options must contain at least one option"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Paramètres, retour & exemple (4)
Paramètresoptions· object · requis
Option names mapped to their values, e.g. {"Size": ["S", "M"], "Colour": ["Black"]}. Each list needs at least one value.list_rows· boolean · optionnel
When true, also return every variant combination. Off by default because the list can be very large.max_options· integer · optionnel
Ceiling on distinct option names. Default 3.max_variants· integer · optionnel
Ceiling to check against. Default 2048, which is the limit Shopify announced on 15 October 2025, up from 100. Override it if your plan differs.
Exemple d'appel{"name": "variant_matrix", "arguments": {"options": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}]}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».