Référence des outils
Le serveur MCP de Snipcart expose 38 outils organisés en 10 catégories. Cette page documente chaque outil, ses paramètres et ce qu'il retourne.
Vous n'avez pas besoin de mémoriser les noms des outils — votre assistant IA choisit le bon outil en fonction de votre requête en langage naturel. Cette référence est utile si vous voulez comprendre exactement ce qui est disponible sous le capot.
Commandes
list_orders
Lister les commandes avec des filtres optionnels. Retourne des résultats paginés.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
status |
string | Non | Filtrer par statut : InProgress, Processed, Disputed, Shipped, Delivered, Pending, Cancelled |
from |
string | Non | Date de début (ISO 8601, ex. 2026-01-01) |
to |
string | Non | Date de fin (ISO 8601) |
limit |
number | Non | Nombre de résultats (défaut : 20) |
offset |
number | Non | Décalage de pagination |
Retourne : Liste paginée avec le jeton de commande, le statut, le courriel du client, le total et le nombre d'articles.
get_order
Obtenir les détails complets d'une commande spécifique.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
token |
string | Oui | Le jeton de commande |
Retourne : Objet de commande complet incluant les articles, les informations du client, les adresses de facturation/livraison et les détails de paiement.
update_order
Mettre à jour le statut de la commande, le statut de paiement, les informations de suivi ou les adresses.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
token |
string | Oui | Le jeton de commande |
status |
string | Non | Nouveau statut de commande |
paymentStatus |
string | Non | Nouveau statut de paiement |
trackingNumber |
string | Non | Numéro de suivi de livraison |
trackingUrl |
string | Non | URL de suivi |
email |
string | Non | Courriel du client |
notes |
string | Non | Notes internes |
billingAddress |
object | Non | Adresse de facturation mise à jour |
shippingAddress |
object | Non | Adresse de livraison mise à jour |
customFields |
array | Non | Valeurs des champs personnalisés |
metadata |
object | Non | Métadonnées arbitraires |
Retourne : L'objet de commande mis à jour.
get_order_digital_goods
Récupérer les liens de téléchargement pour les produits numériques d'une commande.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
token |
string | Oui | Le jeton de commande |
Retourne : Tableau de produits numériques avec les URLs de téléchargement.
create_order_notification
Envoyer une notification liée à une commande. Limité à 20 appels par 2 minutes par clé API.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
token |
string | Oui | Le jeton de commande |
type |
string | Oui | Comment, OrderStatusChanged, OrderShipped, TrackingNumber ou Invoice |
deliveryMethod |
string | Non | Email (envoie au client) ou None (interne seulement). Par défaut : None. |
message |
string | Non | Corps du message de notification |
Retourne : L'objet de notification créé.
list_order_notifications
Lister toutes les notifications envoyées pour une commande.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
token |
string | Oui | Le jeton de commande |
Retourne : Tableau d'objets de notification.
Clients
list_customers
Lister les clients avec des filtres optionnels.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
status |
string | Non | Confirmed ou Unconfirmed |
email |
string | Non | Filtrer par courriel |
name |
string | Non | Filtrer par nom |
from |
string | Non | Date de début (ISO 8601) |
to |
string | Non | Date de fin (ISO 8601) |
limit |
number | Non | Nombre de résultats |
offset |
number | Non | Décalage de pagination |
Retourne : Liste paginée avec l'ID du client, le courriel, le statut, la localisation et les statistiques de commandes.
get_customer
Obtenir le profil complet et les statistiques d'un client.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
id |
string | Oui | L'ID du client |
Retourne : Objet client complet avec les adresses, les statistiques et un résumé de l'historique de commandes.
get_customer_orders
Obtenir toutes les commandes passées par un client spécifique.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
id |
string | Oui | L'ID du client |
Retourne : Tableau d'objets de commande.
update_customer
Mettre à jour le courriel ou les adresses d'un client.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
id |
string | Oui | L'ID du client |
email |
string | Oui | Nouvelle adresse courriel |
billingAddress |
object | Non | Adresse de facturation mise à jour |
shippingAddress |
object | Non | Adresse de livraison mise à jour |
cartToken |
string | Non | Jeton de panier à associer |
Retourne : L'objet client mis à jour.
delete_customer
Supprimer définitivement un compte client. Cette action est irréversible.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
id |
string | Oui | L'ID du client |
Retourne : Confirmation de succès.
Produits
list_products
Lister les produits avec des filtres optionnels.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
userDefinedId |
string | Non | Filtrer par ID de produit personnalisé |
from |
string | Non | Date de début (ISO 8601) |
to |
string | Non | Date de fin (ISO 8601) |
orderBy |
string | Non | Champ de tri |
limit |
number | Non | Nombre de résultats |
offset |
number | Non | Décalage de pagination |
Retourne : Liste paginée avec l'ID du produit, le nom, le prix, le stock et le nombre de variantes.
get_product
Obtenir les détails complets d'un produit.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
id |
string | Oui | L'ID du produit |
Retourne : Objet produit complet avec les variantes, les catégories et les descriptions.
update_product_stock
Mettre à jour les niveaux de stock ou les paramètres de gestion d'inventaire.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
id |
string | Oui | L'ID du produit |
stock |
number | Non | Nouvelle quantité en stock (pour la gestion ByProduct) |
allowOutOfStockPurchases |
boolean | Non | Autoriser les achats en rupture de stock |
inventoryManagementMethod |
string | Non | DontTrack, ByProduct ou ByVariant |
variants |
array | Non | Tableau d'objets variantes avec les champs variation et stock |
Retourne : L'objet produit mis à jour.
archive_product
Suppression douce d'un produit. Le produit peut être restauré depuis le tableau de bord Snipcart.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
id |
string | Oui | L'ID du produit |
Retourne : Confirmation de succès.
Rabais
list_discounts
Lister tous les rabais. Limité à 10 appels par minute par clé API.
Retourne : Tableau d'objets de rabais.
get_discount
Obtenir les détails d'un rabais spécifique.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
id |
string | Oui | L'ID du rabais |
Retourne : L'objet de rabais.
create_discount
Créer un nouveau rabais. Les champs requis dépendent du déclencheur et du type que vous choisissez.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
name |
string | Oui | Nom d'affichage du rabais |
trigger |
string | Oui | Code (coupon), Total (valeur du panier) ou Product (produit spécifique) |
type |
string | Oui | FixedAmount, Rate, AlternatePrice, Shipping, FixedAmountOnItems, AmountOnSubscription ou RateOnSubscription |
code |
string | Conditionnel | Requis lorsque trigger est Code. Le code de coupon que les clients saisissent. |
totalToReach |
number | Conditionnel | Requis lorsque trigger est Total. Valeur minimale du panier. |
itemId |
string | Conditionnel | Requis lorsque trigger est Product. L'ID du produit. |
amount |
number | Conditionnel | Requis pour les types FixedAmount. Montant en dollars de la réduction. |
rate |
number | Conditionnel | Requis pour les types Rate. Décimale entre 0 et 1 (ex. 0.10 pour 10 % de rabais). |
shippingDescription |
string | Conditionnel | Requis pour le type Shipping. |
shippingCost |
number | Conditionnel | Requis pour le type Shipping (mettre à 0 pour la livraison gratuite). |
maxNumberOfUses |
number | Non | Limiter le nombre total d'utilisations pour tous les clients |
expires |
string | Non | Date d'expiration (ISO 8601) |
Exemples courants :
- Coupon 10 % de rabais :
trigger=Code, code=SUMMER10, type=Rate, rate=0.10 - 5 $ de réduction à 50 $ de panier :
trigger=Total, totalToReach=50, type=FixedAmount, amount=5 - Livraison gratuite :
trigger=Code, code=FREESHIP, type=Shipping, shippingDescription="Free shipping", shippingCost=0
Retourne : L'objet de rabais créé.
update_discount
Mettre à jour les propriétés d'un rabais existant.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
id |
string | Oui | L'ID du rabais |
name |
string | Non | Nom mis à jour |
code |
string | Non | Code de coupon mis à jour |
amount |
number | Non | Montant mis à jour |
rate |
number | Non | Taux mis à jour |
maxNumberOfUses |
number | Non | Limite d'utilisation mise à jour |
expires |
string | Non | Date d'expiration mise à jour |
archived |
boolean | Non | Mettre à true pour désactiver |
Retourne : L'objet de rabais mis à jour.
delete_discount
Supprimer un rabais. Cela échouera si le rabais a été utilisé dans des commandes complétées.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
id |
string | Oui | L'ID du rabais |
Retourne : Confirmation de succès.
Remboursements
list_order_refunds
Lister tous les remboursements d'une commande.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
token |
string | Oui | Le jeton de commande |
Retourne : Tableau d'objets de remboursement.
get_order_refund
Obtenir les détails d'un remboursement spécifique.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
token |
string | Oui | Le jeton de commande |
id |
string | Oui | L'ID du remboursement |
Retourne : L'objet de remboursement.
create_order_refund
Créer un remboursement sur une commande. Cette action est irréversible. Le montant du remboursement ne peut pas dépasser le total de la commande.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
token |
string | Oui | Le jeton de commande |
amount |
number | Oui | Montant du remboursement dans la devise de la commande |
comment |
string | Non | Raison du remboursement |
notifyCustomer |
boolean | Non | Envoyer une notification par courriel |
autoRefundTaxes |
boolean | Non | Rembourser automatiquement les taxes associées |
status |
string | Non | Partial ou Complete |
Retourne : L'objet de remboursement créé.
Notes de commande
list_order_log_items
Lister les notes internes et les entrées de journal d'une commande.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
token |
string | Oui | Le jeton de commande |
Retourne : Tableau d'objets d'entrée de journal.
create_order_log_item
Ajouter une note interne à une commande. Ces notes sont visibles uniquement dans le tableau de bord, pas par les clients.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
token |
string | Oui | Le jeton de commande |
content |
string | Oui | Le contenu de la note |
Retourne : L'entrée de journal créée.
Paniers abandonnés
list_abandoned_carts
Lister les paniers abandonnés. Utilise la pagination par jeton de continuation (pas par décalage).
| Paramètre | Type | Requis | Description |
|---|---|---|---|
limit |
number | Non | Nombre de résultats |
continuationToken |
string | Non | Jeton d'une réponse précédente pour charger la page suivante |
timeRange |
string | Non | Plage prédéfinie (ex. LastWeek) |
minimalValue |
number | Non | Valeur minimale du panier |
email |
string | Non | Filtrer par courriel du client |
productId |
string | Non | Filtrer par produit |
Retourne : Liste paginée avec jeton de continuation pour charger plus de résultats.
get_abandoned_cart
Obtenir les détails complets d'un panier abandonné.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
token |
string | Oui | Le jeton du panier abandonné |
Retourne : Objet panier complet avec les articles, les informations du client et les horodatages.
Sessions utilisateur
get_user_session
Obtenir les détails d'une session utilisateur.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
token |
string | Oui | Le jeton de session |
Retourne : Objet de session avec les informations du client et du panier.
Domaines
get_domain
Obtenir la configuration du domaine principal de votre boutique.
Retourne : Objet de configuration du domaine.
update_domain
Mettre à jour le domaine principal de votre boutique.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
domain |
string | Oui | Le domaine (ex. mystore.com) |
protocol |
string | Non | HTTPS ou HTTP (par défaut : HTTPS) |
Retourne : L'objet de domaine mis à jour.
list_allowed_domains
Lister tous les domaines autorisés à intégrer le paiement Snipcart.
Retourne : Tableau d'objets de domaine.
add_allowed_domains
Ajouter des domaines à la liste autorisée.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
domains |
array | Oui | Tableau de chaînes de domaines (ex. ["mystore.com", "staging.mystore.com"]) |
Retourne : Liste mise à jour des domaines autorisés.
remove_allowed_domains
Retirer des domaines de la liste autorisée.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
domains |
array | Oui | Tableau de chaînes de domaines à retirer |
Retourne : Liste mise à jour des domaines autorisés.
Méthodes de livraison
list_shipping_methods
Lister toutes les méthodes de livraison personnalisées.
Retourne : Tableau d'objets de méthode de livraison.
get_shipping_method
Obtenir les détails d'une méthode de livraison spécifique.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
id |
string | Oui | L'ID de la méthode de livraison (UUID) |
Retourne : L'objet de méthode de livraison.
create_shipping_method
Créer une méthode de livraison personnalisée avec des tarifs basés sur le poids.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
name |
string | Oui | Nom d'affichage |
rates |
array | Oui | Tableau d'objets de tarifs : { cost, weight: { from, to } } |
onOrderTotalAbove |
number | Non | Appliquer uniquement lorsque le total du panier dépasse cette valeur |
postalCodeRegex |
string | Non | Expression régulière pour les codes postaux |
countryCondition |
array | Non | Tableau d'objets { countryCode, stateCode } |
guaranteedEstimatedDelivery |
string | Non | Délai de livraison estimé |
localizationId |
string | Non | ID de localisation pour les traductions |
Exemple :
{
"name": "Express Shipping",
"rates": [
{ "cost": 25.00, "weight": { "from": 0, "to": 5000 } },
{ "cost": 35.00, "weight": { "from": 5001, "to": 10000 } }
],
"countryCondition": [
{ "countryCode": "US" },
{ "countryCode": "CA" }
]
}Retourne : L'objet de méthode de livraison créé.
Limitation connue : Le champ
guaranteedEstimatedDeliveryest accepté par l'API mais peut ne pas être persisté en raison d'un problème côté serveur. Définissez les estimations de délai de livraison depuis le tableau de bord Snipcart comme solution de contournement.
update_shipping_method
Mettre à jour une méthode de livraison existante. Le serveur récupère l'état actuel et fusionne vos modifications.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
id |
string | Oui | L'ID de la méthode de livraison (UUID) |
name |
string | Non | Nom mis à jour |
rates |
array | Non | Tarifs mis à jour |
onOrderTotalAbove |
number | Non | Seuil de total du panier mis à jour |
postalCodeRegex |
string | Non | Expression régulière de code postal mise à jour |
countryCondition |
array | Non | Conditions de pays mises à jour |
Retourne : L'objet de méthode de livraison mis à jour.
delete_shipping_method
Supprimer une méthode de livraison.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
id |
string | Oui | L'ID de la méthode de livraison (UUID) |
Retourne : Confirmation de succès.
Prochaine étape : Gestion des erreurs — Comprendre les erreurs et les limites de débit.