Une API publique et un serveur MCP pour le catalogue Ex2
Les forfaits, les prix, les noms de domaine et leur disponibilité, en JSON pour votre code ou en outils pour les assistants IA : gratuits, en lecture seule, sans clé. Les clients d’Ex2 peuvent aussi y connecter leur compte.
API du catalogue
Chaque forfait avec ses prix, ses caractéristiques et son lien de commande, en CAD, EUR ou USD, en français ou en anglais./api/v1
Serveur MCP
Le même catalogue en outils pour Claude, ChatGPT, Cursor et les autres assistants, et votre propre compte une fois connecté./mcp
Disponibilité des domaines
Si un nom est libre en ce moment, avec son prix sur un an et le lien pour l’enregistrer./api/v1/domains/availability
llms.txt
Un index du site pour les modèles de langage : les pages qui comptent et où sont les données à jour./llms.txt
Connecter un assistant IA
Avec le serveur MCP (Model Context Protocol), un assistant répond avec les forfaits et les prix du jour et de vrais liens de commande, plutôt qu’avec des chiffres dont il se souvient.
Claude Code
Dans un terminal :
claude mcp add --transport http ex2 https://www.ex2.com/mcpClaude, ChatGPT et les autres applications
Ajoutez un connecteur personnalisé (un serveur MCP distant) avec cette URL, sans authentification :
https://www.ex2.com/mcpCursor, VS Code et les autres éditeurs
Dans la configuration MCP de l’éditeur, par exemple .cursor/mcp.json pour Cursor :
{
"mcpServers": {
"ex2": { "url": "https://www.ex2.com/mcp" }
}
}Les outils
Tous en lecture seule : ils ne peuvent rien commander ni modifier.
list_product_lines- Les gammes de produits (hébergement vert, WordPress, e-mail, VPS…) avec leurs pages et les identifiants de leurs forfaits.
list_plans- Les forfaits avec leurs prix par cycle de facturation, leur remise de première année et leurs caractéristiques principales ; tous ou une seule gamme.
get_plan- Un forfait avec son tableau technique complet.
compare_plans- De deux à dix forfaits côte à côte, une ligne par caractéristique.
get_domain_pricing- Les prix d’enregistrement, de transfert et de renouvellement sur un an, par extension.
check_domain- Si un nom de domaine peut être enregistré maintenant, ses prix et le lien pour le commander (ou le transférer, s’il est pris).
Streamable HTTP, sans session ni authentification. Versions du protocole : 2025-03-26, 2025-06-18, 2025-11-25, 2026-07-28.
Votre compte Ex2 dans votre assistant IA
Un second serveur MCP, pour les clients d’Ex2 : une fois connecté, votre assistant peut lire vos services, vos noms de domaine, vos factures et vos tickets de support et répondre à vos questions à leur sujet, et agir pour vous seulement là où vous l’autorisez en le connectant (les outils ci-dessous disent ce que fait chacun). Vous pouvez le déconnecter à tout moment.
Claude, ChatGPT et les autres applications
Ajoutez un connecteur personnalisé avec cette URL. La première fois, l’application ouvre la page de connexion d’Ex2 :
https://api.ex2.com/mcp/accountClaude Code
Dans un terminal, puis /mcp dans Claude Code pour vous connecter :
claude mcp add --transport http ex2-account https://api.ex2.com/mcp/accountCursor, VS Code et les autres éditeurs
Dans la configuration MCP de l’éditeur ; l’éditeur vous demande de vous connecter :
{
"mcpServers": {
"ex2-account": { "url": "https://api.ex2.com/mcp/account" }
}
}Les outils de votre compte
En plus des outils du catalogue ci-dessus. Les cinq premiers lisent votre compte, et les devis ne changent rien. Ceux qui commandent, renouvellent, changent de forfait ou résilient ne fonctionnent que si vous avez autorisé les actions de facturation en vous connectant, et ceux qui changent les serveurs de noms, le verrou ou le registraire d’un domaine seulement si vous avez autorisé les actions sur les domaines. Une commande, un renouvellement ou un changement de forfait crée une facture que vous réglez comme d’habitude. Aucun ne peut payer, voir vos moyens de paiement ni obtenir le code de transfert d’un domaine.
get_my_account- Votre compte client : nom, entreprise, adresse e-mail, pays, devise et solde de crédit.
list_my_services- Vos forfaits d’hébergement et vos autres services : état, cycle de facturation, prochaine échéance et prix, avec le lien pour gérer chacun.
list_my_domains- Vos noms de domaine : état, date d’expiration, prix de renouvellement et renouvellement automatique ou non.
list_my_invoices- Vos factures, les impayées par défaut (ou les payées, ou toutes), les plus récentes d’abord : numéro, dates, total, retard éventuel et lien pour la payer.
list_my_tickets- Vos tickets de support : sujet, service, état et date de la dernière réponse. Jamais les messages eux-mêmes.
quote_domain_order- Si un nom de domaine peut être enregistré ou transféré, son prix, les règles du registre (.ca, .fr) et les conditions à accepter. Ne change rien.
order_domain- Commande un nom de domaine, enregistrement ou transfert entrant : une commande et sa facture, une fois le prix et les conditions acceptés.
quote_plan_order- Le prix d’un forfait pour votre site, premier paiement et renouvellement, et les conditions à accepter. Ne change rien.
order_plan- Commande un forfait pour votre site : une commande et sa facture ; Ex2 le met en place une fois réglée.
set_domain_auto_renew- Active ou désactive le renouvellement automatique de l’un de vos noms de domaine.
renew_domain- Renouvelle un nom de domaine pour 1 à 10 ans : une commande et sa facture, que vous réglez comme d’habitude.
quote_plan_change- Ce que coûterait le passage d’un service à un autre forfait, maintenant et au renouvellement. Ne change rien.
change_plan- Fait passer un service à un autre forfait ; un montant dû crée une facture.
cancel_service- Résilie un service, à la fin de sa période de facturation ou immédiatement, après avoir dit ce qui se passerait.
get_payment_methods_link- La page de l’espace client où vous ajoutez ou changez un moyen de paiement.
get_domain_registrar_settings- Les serveurs de noms d’un nom de domaine et s’il est verrouillé contre les transferts.
set_domain_nameservers- Fait pointer un nom de domaine vers d’autres serveurs de noms.
set_domain_lock- Verrouille ou déverrouille un nom de domaine chez son registraire.
transfer_domain_out- Prépare le départ d’un nom de domaine vers un autre registraire : le déverrouille et vous envoie son code de transfert par courriel, jamais à l’assistant.
Aussi en API HTTP pour les agents et les scripts, avec la même connexion (OAuth 2.1, cette adresse comme ressource) : https://api.ex2.com/api/v1/account. Sa description OpenAPI en liste les points d’accès : le compte, les services, les noms de domaine, les factures, les tickets, les mêmes actions que les outils et le journal de ce que chaque connexion a fait. Pour vos propres scripts, créez un jeton d’API sur la page des assistants connectés, en ne cochant que les actions dont il a besoin.
Vous décidez
Avant que vous vous connectiez, la page d’Ex2 nomme l’application et liste ce qu’elle lira. Vous vous connectez avec vos identifiants de l’espace client Ex2, et choisissez le compte si vos identifiants en gèrent plusieurs.
Vos permissions s’appliquent
Un contact d’un compte ne voit que ce que ses permissions de l’espace client permettent, vérifiées à chaque demande. Les mots de passe, les moyens de paiement et les messages des tickets ne sont jamais transmis.
Déconnexion à tout moment
Voyez les assistants connectés à votre compte et déconnectez celui que vous voulez sur la page des assistants connectés. Un accès dure une heure et n’est renouvelé que tant que la connexion existe.
L’API du catalogue
Du JSON en HTTPS, en GET seulement, ouvert à toutes les origines (CORS). Chaque réponse indique sa devise ; les montants sont hors taxes.
| Adresse | Réponse | Essayer |
|---|---|---|
GET /api/v1 | Ce que l’API offre, ses paramètres et les gammes de produits avec les identifiants de leurs forfaits. | Essayer |
GET /api/v1/plans | Chaque forfait avec ses prix, sa remise de première année, ses caractéristiques et son lien de commande. line=email garde une seule gamme. | Essayer |
GET /api/v1/plans/{id} | Un forfait, avec son tableau technique. | Essayer |
GET /api/v1/compare | De deux à dix forfaits côte à côte : plans=id1,id2. | Essayer |
GET /api/v1/domains/pricing | Les prix d’enregistrement, de transfert et de renouvellement sur un an, par extension : tld=com,ca ou toutes. | Essayer |
GET /api/v1/domains/availability | Si domain=… peut être enregistré maintenant, ses prix et le lien du panier. | Essayer |
Paramètres de toutes les adresses : currency (CAD, EUR ou USD ; USD par défaut) et lang (en ou fr ; en par défaut).
La description OpenAPI 3.1 de l’API, à importer dans un GPT personnalisé (Actions), dans Postman ou dans un générateur de code :
https://www.ex2.com/api/v1/openapi.jsonExemple
Le prix d’un .com, dans votre devise (une réponse en direct) :
curl "https://www.ex2.com/api/v1/domains/pricing?tld=com¤cy=USD"{
"currency": "USD",
"period_years": 1,
"order_url": "https://www.ex2.com/clients/cart.php?a=add&domain=register¤cy=7&language=english",
"domains": [
{
"tld": ".com",
"register": 13.4900000000000002131628207280300557613372802734375,
"transfer": 13.4900000000000002131628207280300557613372802734375,
"renew": 15.7400000000000002131628207280300557613372802734375
}
]
}À savoir
Pas de clé pour le catalogue
Le catalogue est public : ni clé ni compte. Votre propre compte demande vos identifiants Ex2, par la page de connexion, et un assistant ou un jeton n’y agit que là où vous avez coché une case. Rien n’est payé par l’un ou l’autre : une commande ou un renouvellement crée une facture que vous réglez dans l’espace client.
Des prix à jour
Lus dans le système de facturation d’Ex2 et gardés 10 minutes au plus (5 pour un domaine). Gardez-les en cache de votre côté aussi.
Usage raisonnable
Disponibilité des domaines : 30 vérifications par 10 minutes et par adresse, 120 par le serveur MCP. Votre compte : 120 requêtes par minute et par connexion, et des limites par heure ou par jour sur les actions, données dans sa description OpenAPI. Au-delà d’une limite, HTTP 429 avec Retry-After. Si tout fonctionne : /api/v1/status.
Stable
Les champs s’ajoutent ; aucun n’est renommé ni retiré. Un changement incompatible vient dans une nouvelle version (/api/v2) ; l’ancienne répond encore au moins 12 mois, avec les en-têtes Deprecation et Sunset et un avis ici. Les erreurs suivent le RFC 9457 (problem details).
Deux langues, trois devises
Noms, caractéristiques et liens en français ou en anglais ; prix en CAD, EUR ou USD, comme sur les pages des produits.
Pour les modèles de langage
/llms.txt décrit le site et ses produits pour les agents IA et les oriente vers l’API et le serveur MCP.
Questions
Sur l’API et les serveurs MCP.
Faut-il un compte ou une clé d’API ?
Pas pour le catalogue : l’API, le serveur MCP public et llms.txt sont ouverts à tous. Le serveur du compte vous demande de vous connecter avec vos identifiants Ex2, et ne demande pas non plus de clé d’API.
Un assistant peut-il commander un forfait ou gérer mes services par là ?
Non. Une fois le serveur du compte connecté, il peut lire vos services, vos factures et vos tickets, mais rien commander, payer ni modifier : il vous donne plutôt le lien du panier ou de l’espace client.
Un domaine affiché comme disponible est-il sûr d’être à moi ?
Pas tout à fait : la vérification est une requête WHOIS en direct, gardée 5 minutes. Quelqu’un d’autre peut enregistrer le nom entre-temps, et un nom premium ou réservé peut encore être refusé à la commande.
Les prix sont-ils ceux du site ?
Oui : le même système de facturation et les mêmes remises de première année que les pages des produits. Les prix sont hors taxes.
Quels assistants IA fonctionnent avec le serveur MCP ?
Tout client qui accepte les serveurs MCP distants en Streamable HTTP : Claude, Claude Code, ChatGPT, Cursor, VS Code et d’autres. Le serveur public ne demande aucune authentification ; le serveur du compte utilise la connexion que ces applications prennent en charge (OAuth).
Quelque chose ne fonctionne pas comme décrit ?
Ouvrez un ticket au support avec l’adresse appelée et la réponse obtenue.