accueil / serveurs / Finance & Paiement / com.moltlinestudio/merchant
com.moltlinestudio/merchant
serveur MCP (Model Context Protocol) · moltline-merchant 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/merchant est sûr ?
Au dernier audit MCP Hub, le serveur MCP « com.moltlinestudio/merchant » 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
- charge_to_net≈ 388 tokens
Compute the gross price to charge so you net a target after fees. FREE. 'Charge X to receive Y' after percentage + fixed processor fees. Typical input {"net_target": 100, "pct_fee": 2.9, "fixed_fee": 0.30} returns {"charge": 103.4, "fee": 3.4, "net": 100.0}. The inverse of processor_fees - solves for gross from a target net. Use when the payout is the fixed requirement. Not when the price is already set. 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": "net_target > 0 and pct_fee < 100 required"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Paramètres, retour & exemple (3)
Paramètrespct_fee· number · optionnel
Processor percentage fee, below 100, e.g. 2.9 for 2.9%. Default 2.9.fixed_fee· number · optionnel
Processor fixed fee per charge. Default 0.30.net_target· number · requis
The amount you want to receive after fees; must be greater than 0.
Exemple d'appel{"name": "charge_to_net", "arguments": {"net_target": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - discount_stack≈ 396 tokens
Stack discounts correctly: sequential vs additive comparison. PREMIUM (license). The two methods differ — this shows both, the final price, and the true total discount. Typical input {"price": 200, "discounts_pct": [20, 10]} returns {"original": 200, "sequential_price": 144.0, "sequential_total_discount_pct": 28.0, "additive_price": 140.0, "difference": 4.0, "note": "..."}. Use when more than one discount applies and the order changes the answer. Not for a single discount inside an invoice (invoice_total). 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": "price > 0 and at least one discount required"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Paramètres, retour & exemple (2)
Paramètresprice· number · requis
Original price before discounts; must be greater than 0.discounts_pct· array · requis
Discount percentages in the order applied, at least one, e.g. [20, 10] for 20% then 10%.
Exemple d'appel{"name": "discount_stack", "arguments": {"price": 1, "discounts_pct": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - installment_plan≈ 388 tokens
Split a total into an installment schedule with optional deposit. PREMIUM (license). Rounding remainders land on the final payment so the schedule always sums exactly. Typical input {"total": 1000, "installments": 3, "deposit_pct": 10} returns {"deposit": 100.0, "payments": [300.0, 300.0, 300.0], "check_sum": 1000.0}. Use when one total is paid across scheduled dates. Not for partial-period adjustments (proration). 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": "total > 0 and 1-36 installments"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Paramètres, retour & exemple (3)
Paramètrestotal· number · requis
Full amount to split; must be greater than 0.deposit_pct· number · optionnel
Optional upfront deposit as a percentage of total, e.g. 10 for 10%. Default 0.installments· integer · requis
Number of payments after the deposit; 1 to 36.
Exemple d'appel{"name": "installment_plan", "arguments": {"total": 1, "installments": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - invoice_total≈ 442 tokens
Total an invoice: per-line totals, subtotal, discount, tax, grand total. FREE. Typical input {"line_items": [{"desc": "Design", "qty": 2, "unit_price": 50}], "tax_pct": 8.5, "discount_pct": 10} returns {"lines": [{"desc": "Design", "qty": 2, "unit_price": 50, "line_total": 100.0}], "subtotal": 100.0, "discount": 10.0, "tax": 7.65, "total": 97.65}. Use when several line items roll up with discount and tax. Not for one transaction's fees (processor_fees) and not for spreading a total over time (installment_plan). 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": "line_items must contain at least one item,"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Paramètres, retour & exemple (3)
Paramètrestax_pct· number · optionnel
Tax percentage applied after the discount, e.g. 8.5. Default 0.line_items· array · requis
At least one line item object {"desc": str, "qty": number, "unit_price": number}; the first 100 items are used.discount_pct· number · optionnel
Discount percentage applied to the subtotal. Default 0.
Exemple d'appel{"name": "invoice_total", "arguments": {"line_items": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - processor_fees≈ 505 tokens
Break down payment-processor fees: fee, net, and effective rate. FREE. Uses editable presets for stripe/paypal/square/shopify (verify current rates) or your own custom_pct + custom_fixed. Typical input {"amount": 1000, "processor": "stripe", "transactions": 10} returns {"gross": 1000, "fee": 32.0, "net": 968.0, "effective_rate_pct": 3.2, "note": "..."}. Use when the charge amount is known and the net payout is the question. Not for the reverse: the gross needed to net a target is charge_to_net. 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": "amount must be > 0, transactions >= 1"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Paramètres, retour & exemple (5)
Paramètresamount· number · requis
Total gross amount processed; must be greater than 0.processor· string · optionnel · stripe | paypal | square | shopify | custom
One of "stripe", "paypal", "square", "shopify", or "custom". Default "stripe".custom_pct· number · optionnel
Percentage fee used when processor is "custom", e.g. 2.5 for 2.5%.custom_fixed· number · optionnel
Fixed per-transaction fee used when processor is "custom", e.g. 0.25.transactions· integer · optionnel
How many transactions the amount is spread across; at least 1. Default 1.
Exemple d'appel{"name": "processor_fees", "arguments": {"amount": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - proration≈ 426 tokens
Compute a prorated charge or refund for a partial billing period. PREMIUM (license). Typical input {"amount_per_period": 90, "days_used": 10, "days_in_period": 30} returns {"days_used": 10, "days_in_period": 30, "prorated_charge": 30.0, "prorated_refund": 60.0, "answer": 30.0}. Use when a plan starts, ends, or changes mid-period. Not for splitting a full amount into scheduled payments (installment_plan). 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": "need amount > 0 and 0 <= days_used <= days_in_period"}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Paramètres, retour & exemple (4)
Paramètresdays_used· integer · requis
Days of the period consumed; 0 to days_in_period.refund_mode· boolean · optionnel
If true, "answer" is the refund amount instead of the charge. Default false.days_in_period· integer · optionnel
Length of the billing period in days; at least 1. Default 30.amount_per_period· number · requis
Full-period price; must be greater than 0.
Exemple d'appel{"name": "proration", "arguments": {"days_used": 1, "amount_per_period": 1}}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é ».