SnapEX Pay
officielPaiements en cryptomonnaies pour les agents IA : compte en libre-service, factures, réception, versements et échange.
Que pouvez-vous faire avec SnapEX Pay MCP ?
- Ouvrir un compte marchand — Demandez à l’agent d’appeler
create_accountpour obtenir unapi_key, unlogin/passwordpour le cabinet et unmcp_personal_url, sans captcha ni e-mail. - Créer et suivre des factures — Utilisez
create_invoicepour obtenir unpay_urlà transmettre au payeur, puis interrogezget_invoicejusqu’à ce que le statut soitpaid; le mode test fonctionne sans argent réel. - Envoyer des paiements en crypto en toute sécurité — Obtenez un devis avec
preview_payout, puis appelezcreate_payoutavec lepreview_idet uneidempotency_keyafin que les nouvelles tentatives ne déclenchent jamais un double paiement. - Consulter le catalogue et les frais — Interrogez
list_assets,get_fiat_rates,get_feesetlist_static_address_networksavant d’avoir besoin d’une clé. - Convertir les actifs détenus — Obtenez un devis avec
preview_conversion, puis exécutezcreate_conversionpour échanger d’autres actifs contre un solde en USDT.
Serveur MCP hébergé
npx add-mcp 'https://pay.snapex.pro/mcp'S’installe dans Claude Code, Codex, Cursor et plus
Documentation
Serveur MCP SnapEX Pay
Serveur MCP pour les paiements en cryptomonnaies : un agent IA ouvre son propre compte marchand et accepte, envoie et échange des cryptomonnaies.
Le serveur MCP SnapEX Pay permet à un agent IA de gérer des paiements en cryptomonnaies sans intervention humaine. L’agent se connecte à https://pay.snapex.pro/mcp,, ouvre lui-même un compte marchand SnapEX Pay (sans captcha ni e-mail) et obtient une clé API. Il peut ensuite créer des factures avec des pages de paiement hébergées, recevoir des cryptomonnaies sur des adresses de dépôt permanentes, conserver un solde en USDT, envoyer des paiements dans de nombreuses cryptomonnaies et sur de nombreux réseaux, et gérer des webhooks. Le mode test exécute l’ensemble du processus sans argent réel. Les paiements commencent toujours par un aperçu gratuit et utilisent une clé d’idempotence : une nouvelle tentative ne déclenche donc jamais un double paiement. Serveur distant (Streamable HTTP) ou package local : npx -y snapex-pay-mcp.
- Serveur distant (recommandé, aucune installation) :
https://pay.snapex.pro/mcp— Streamable HTTP. - Package local stdio :
npx -y snapex-pay-mcp— les mêmes outils, client léger de la même API. - Docker :
docker build -t snapex-pay-mcp . && docker run -i --rm snapex-pay-mcp. - Nom dans le registre MCP :
pro.snapex/pay. - Documentation pour les utilisateurs : https://pay.snapex.pro/mcp · Référence REST : https://pay.snapex.pro/partner/merchant/docs · fiche du serveur : https://pay.snapex.pro/.well-known/mcp.json · https://pay.snapex.pro/llms.txt
- Politique de confidentialité : https://pay.snapex.pro/privacy · Conditions d’utilisation : https://pay.snapex.pro/terms · Règles pour les marchands : https://pay.snapex.pro/rules · Assistance : https://pay.snapex.pro/#chat
Utilisation par un agent
- Se connecter sans clé. Les outils du catalogue (
list_assets,get_fiat_rates,get_fees,list_static_address_networks) sont immédiatement disponibles. - Appeler
create_account. L’outil renvoieapi_key(affiché une seule fois), un identifiantlogin/passwordpour une personne, etmcp_personal_url. La nouvelle clé est immédiatement utilisée : sur le serveur distant, pour le reste de la session MCP ; dans le package stdio, pour le processus (et elle est enregistrée dans~/.config/snapex-pay/credentials.jsonpour les prochaines exécutions). - Recevoir :
create_invoice→ transmettrepay_urlau payeur → appelerget_invoicejusqu’àpaid.environment: "test"exécute l’ensemble du processus sans argent réel (une facture de test passe au statut payé environ 10 s après la sélection d’une cryptomonnaie ; le solde ne change pas). - Envoyer :
preview_payout(devis gratuit) →create_payoutavec lepreview_idet votre propreidempotency_key(opération irréversible ; une nouvelle tentative avec la même clé ne déclenche jamais un double paiement). - Le solde est conservé en USDT : pour obtenir une autre cryptomonnaie, effectuez un paiement dans cette cryptomonnaie.
preview_conversion→create_conversionconvertit les autres actifs encore détenus par un ancien compte.
Chaque réponse d’erreur indique la marche à suivre (what_to_do), par exemple unauthorized → appeler create_account ; rate_limited → attendre retry_after_seconds.
Connexion
Claude Code
claude mcp add --transport http snapex-pay https://pay.snapex.pro/mcp
# with an existing key:
claude mcp add --transport http snapex-pay https://pay.snapex.pro/mcp --header "Authorization: Bearer smk_…"
Cursor — ~/.cursor/mcp.json
{
"mcpServers": {
"snapex-pay": { "url": "https://pay.snapex.pro/mcp" }
}
}
Ajoutez "headers": { "Authorization": "Bearer smk_…" } pour conserver un même compte d’une session à l’autre.
VS Code — .vscode/mcp.json
{
"servers": {
"snapex-pay": { "type": "http", "url": "https://pay.snapex.pro/mcp" }
}
}
Windsurf — ~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"snapex-pay": { "serverUrl": "https://pay.snapex.pro/mcp" }
}
}
Cline — cline_mcp_settings.json
{
"mcpServers": {
"snapex-pay": { "type": "streamableHttp", "url": "https://pay.snapex.pro/mcp" }
}
}
Instructions détaillées pour les installateurs IA : llms-install.md.
Gemini CLI
En tant qu’extension (ce dépôt contient gemini-extension.json) :
gemini extensions install https://github.com/snapexpay/snapex-pay-mcp
ou dans ~/.gemini/settings.json :
{
"mcpServers": {
"snapex-pay": { "httpUrl": "https://pay.snapex.pro/mcp" }
}
}
Claude Desktop — claude_desktop_config.json
Serveur distant via mcp-remote :
{
"mcpServers": {
"snapex-pay": { "command": "npx", "args": ["-y", "mcp-remote", "https://pay.snapex.pro/mcp"] }
}
}
ou le package local :
{
"mcpServers": {
"snapex-pay": {
"command": "npx",
"args": ["-y", "snapex-pay-mcp"],
"env": { "SNAPEX_API_KEY": "smk_…" }
}
}
}
(SNAPEX_API_KEY est facultatif : sans lui, l’agent appelle create_account et la clé est enregistrée pour les prochaines exécutions.)
Connecteurs claude.ai et ChatGPT
Ajoutez un connecteur personnalisé avec l’URL https://pay.snapex.pro/mcp et sans authentification. Ces clients ne peuvent pas envoyer
d’en-têtes ; après create_account, récupérez mcp_personal_url dans sa réponse (également renvoyé par get_account) et utilisez-le
comme URL du connecteur — chaque nouvelle conversation utilisera alors le même compte. Cette URL contient un identifiant secret : traitez-la comme un mot de passe.
API OpenAI Responses
{
"type": "mcp",
"server_label": "snapex_pay",
"server_url": "https://pay.snapex.pro/mcp",
"headers": { "Authorization": "Bearer smk_…" },
"require_approval": { "always": { "tool_names": ["create_payout", "create_conversion"] } }
}
Autres clients et catalogues
Le dépôt contient les manifestes consultés par les catalogues : server.json (registre MCP officiel), glama.json (Glama),
gemini-extension.json + GEMINI.md (Gemini CLI), lhm.plugin.json (LobeHub), .cursor-plugin/plugin.json +
mcp.json (Cursor Marketplace), plugin.json (Agent Plugins / Kiro), llms-install.md (Cline).
Docker
docker build -t snapex-pay-mcp .
docker run -i --rm -e SNAPEX_API_KEY=smk_… snapex-pay-mcp
Outils
Compte
| Outil | Fonction |
|---|---|
create_account | Ouvrir un compte SnapEX Pay (sans captcha) |
get_account | Afficher le compte et la clé actuels |
Catalogue (aucune clé requise)
| Outil | Fonction |
|---|---|
list_assets | Lister les cryptomonnaies et les réseaux |
get_fiat_rates | Taux de change des monnaies fiduciaires |
get_fees | Devis actuels des frais d’acheminement |
list_static_address_networks | Réseaux pour les adresses permanentes |
Solde
| Outil | Fonction |
|---|---|
get_balances | Solde du compte |
list_transactions | Historique du solde |
Réception
| Outil | Fonction |
|---|---|
create_invoice | Créer une facture (recevoir des cryptomonnaies) |
get_invoice | État de la facture |
list_invoices | Lister les factures |
get_invoice_payment_methods | Cryptomonnaies acceptées pour le paiement d’une facture |
select_invoice_payment_method | Choisir une cryptomonnaie pour une facture |
preview_payment | Obtenir un devis pour un paiement direct |
create_payment | Créer un paiement direct |
get_payment | État du paiement |
list_payments | Lister les paiements |
create_static_address | Adresse de dépôt permanente |
list_static_addresses | Lister les adresses permanentes |
list_static_address_deposits | Dépôts sur une adresse permanente |
Envoi (paiements)
| Outil | Fonction |
|---|---|
preview_payout | Obtenir un devis pour un paiement (envoyer des cryptomonnaies) |
create_payout | Envoyer un paiement (irréversible) ⚠️ irréversible |
get_payout | État du paiement |
list_payouts | Lister les paiements |
Échange
| Outil | Fonction |
|---|---|
preview_conversion | Obtenir un devis de conversion (échange) |
create_conversion | Effectuer une conversion ⚠️ irréversible |
get_conversion | État de la conversion |
list_conversions | Lister les conversions |
Webhooks
| Outil | Fonction |
|---|---|
list_webhooks | Lister les points de terminaison webhook |
create_webhook | Ajouter un point de terminaison webhook |
update_webhook | Modifier un point de terminaison webhook |
rotate_webhook_secret | Nouveau secret webhook ⚠️ irréversible |
Ressources : snapex://docs/quickstart, snapex://docs/webhooks. Prompts : accept_crypto_payment, send_crypto_payout.
Environnement (package stdio)
| Variable | Valeur par défaut | Signification |
|---|---|---|
SNAPEX_API_KEY | — | Clé API marchand smk_…. Facultatif : create_account en génère une. |
SNAPEX_BASE_URL | https://pay.snapex.pro | URL de base de l’API. |
SNAPEX_CREDENTIALS_FILE | ~/.config/snapex-pay/credentials.json | Emplacement d’enregistrement d’une clé issue de create_account (mode 600). |
SNAPEX_NO_SAVE | — | 1 — ne pas enregistrer les identifiants sur le disque. |
Sécurité
- Un agent ne déplace que les fonds de son propre compte ; un nouveau compte commence avec un solde nul.
- La clé et le mot de passe généré ne sont affichés qu’une seule fois. Une personne peut accéder à l’espace marchand avec l’identifiant et le mot de passe, puis révoquer ou renouveler les clés.
- Les paiements se font en deux étapes (devis, puis envoi) et nécessitent un
idempotency_key;create_payout,create_conversionetrotate_webhook_secretsont marquésdestructiveHint, afin que les clients puissent demander confirmation avant leur exécution. - Limites : quelques nouveaux comptes par adresse IP et par heure ; environ 120 appels API par minute et par clé ; 5 paiements par minute et 30 par heure.
- Règles concernant les produits pouvant être vendus : https://pay.snapex.pro/rules.
Développement
La liste des outils est générée à partir du serveur SnapEX Pay (app/Mcp/McpToolCatalog.php) :
php artisan mcp:export-tools # writes src/tools.json, syncs the version of the manifests and LobeHub's tools
npm ci && npm test # build + offline smoke test with the official MCP SDK client
SNAPEX_E2E_BASE_URL=http://127.0.0.1:8765 node test/smoke.mjs # full flow against a local (never production) server
Assistance
Chat : https://pay.snapex.pro/#chat · Confidentialité : https://pay.snapex.pro/privacy · Conditions d’utilisation : https://pay.snapex.pro/terms
Licence
MIT