Sequenzy MCP Server
officielOutil de marketing par e-mail pour SaaS
Documentation
Serveur Sequenzy MCP
Serveur MCP officiel pour Sequenzy, la plateforme d'email marketing propulsée par l'IA.
Connectez Sequenzy à Claude Desktop, Claude Code, Codex, Cursor, Windsurf, VS Code Copilot, OpenClaw et d'autres clients MCP afin que votre assistant IA puisse gérer les opérations d'emailing avec des outils structurés plutôt que des appels API manuels.
Ce que vous pouvez faire
- Gérer les abonnés, les tags, les listes et les segments dynamiques.
- Synchroniser les segments vers les audiences personnalisées Meta pour le reciblage Facebook et Instagram.
- Gérer les produits et joindre des fichiers de livraison numérique pour les automatisations d'achat.
- Rédiger, mettre à jour, planifier et inspecter les campagnes.
- Créer et modifier des séquences d'emails, y compris les automatisations déclenchées par événement et par entrée dans un segment.
- Annuler, mettre en pause, reprendre, dupliquer ou supprimer des campagnes et inscrire des contacts dans des séquences.
- Gérer les modèles d'emails transactionnels et envoyer des emails transactionnels individuels.
- Créer, modifier, publier, dépublier et supprimer des pages de destination.
- Connecter et vérifier des domaines personnalisés pour les pages de destination publiées.
- Gérer les invitations d'équipe, les conversations de boîte de réception et les points de terminaison webhook sortants.
- Générer le contenu d'emails, les lignes d'objet et les séquences en plusieurs étapes.
- Inspecter les analyses, l'activité des abonnés, la santé de la délivrabilité et les URL du tableau de bord.
- Configurer les informations produit de l'entreprise, les sites web d'expéditeur et les exemples d'intégration pour les frameworks courants.
Chaque outil MCP publié inclut des annotations explicites readOnlyHint, destructiveHint et openWorldHint afin que les clients compatibles puissent afficher des affordances précises d'utilisation des outils. Les outils publient également des définitions outputSchema et renvoient structuredContent, donnant aux clients et aux modèles des formes de résultats lisibles par machine pour les appels ultérieurs.
Configuration rapide
Le chemin de configuration le plus simple est l'assistant Sequenzy :
npx @sequenzy/setup
L'assistant ouvre le flux de connexion du navigateur, crée une clé API personnelle, détecte les clients IA pris en charge et les configure automatiquement lorsque cela est possible.
MCP distant hébergé
Pour les clients qui prennent en charge le MCP HTTP Streamable, utilisez le point de terminaison hébergé de Sequenzy au lieu d'exécuter un processus stdio local :
https://api.sequenzy.com/v1/mcp
Les clients distants doivent s'authentifier avec le flux OAuth de Sequenzy lorsqu'il est pris en charge. Les clients locaux et d'automatisation peuvent toujours utiliser le package stdio ci-dessous avec SEQUENZY_API_KEY.
Fichiers de découverte lisibles par machine :
- Manifeste du serveur MCP :
server.json - Carte d'agent :
.well-known/agent-card.json - Manifeste de capacité d'agent :
agent-capability.json - Métadonnées de compétence OpenClaw :
openclaw/skill.json
Configuration manuelle
Tous les clients MCP stdio utilisent la même commande :
- Commande :
npx - Args :
-y @sequenzy/mcp - Variable d'env requise :
SEQUENZY_API_KEY=seq_user_your_key_here
Variables d'environnement optionnelles :
SEQUENZY_API_URL- URL de base de l'API Sequenzy. Par défauthttps://api.sequenzy.com.SEQUENZY_APP_URL- URL de base du tableau de bord Sequenzy utilisée par les assistants d'URL d'application. Par défauthttps://sequenzy.com.
Claude Desktop
Ajoutez ceci à votre configuration Claude Desktop :
- macOS :
~/Library/Application Support/Claude/claude_desktop_config.json - Windows :
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"sequenzy": {
"command": "npx",
"args": ["-y", "@sequenzy/mcp"],
"env": {
"SEQUENZY_API_KEY": "seq_user_your_key_here"
}
}
}
}
Redémarrez Claude Desktop après avoir modifié la configuration.
Claude Code
claude mcp add --scope user --env=SEQUENZY_API_KEY=seq_user_your_key_here sequenzy -- npx -y @sequenzy/mcp
Sur Windows natif, enveloppez npx avec cmd /c :
claude mcp add --scope user --env=SEQUENZY_API_KEY=seq_user_your_key_here sequenzy -- cmd /c npx -y @sequenzy/mcp
Pour une configuration de projet partagée, utilisez .mcp.json :
{
"mcpServers": {
"sequenzy": {
"command": "npx",
"args": ["-y", "@sequenzy/mcp"],
"env": {
"SEQUENZY_API_KEY": "seq_user_your_key_here"
}
}
}
}
Codex
codex mcp add sequenzy --env SEQUENZY_API_KEY=seq_user_your_key_here -- npx -y @sequenzy/mcp
codex mcp list
Configuration manuelle de Codex dans ~/.codex/config.toml :
[mcp_servers.sequenzy]
command = "npx"
args = ["-y", "@sequenzy/mcp"]
[mcp_servers.sequenzy.env]
SEQUENZY_API_KEY = "seq_user_your_key_here"
Cursor
Ajoutez ceci à ~/.cursor/mcp.json :
{
"mcpServers": {
"sequenzy": {
"command": "npx",
"args": ["-y", "@sequenzy/mcp"],
"env": {
"SEQUENZY_API_KEY": "seq_user_your_key_here"
}
}
}
}
Windsurf
Utilisez la même forme JSON que Cursor.
- macOS :
~/Library/Application Support/Windsurf/mcp.json - Windows :
%APPDATA%\Windsurf\mcp.json
VS Code Copilot
VS Code utilise un objet servers :
{
"servers": {
"sequenzy": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@sequenzy/mcp"],
"env": {
"SEQUENZY_API_KEY": "seq_user_your_key_here"
}
}
}
}
Autres clients MCP
Pour OpenClaw, Hermes et d'autres clients compatibles MCP, pointez le client vers npx -y @sequenzy/mcp et définissez SEQUENZY_API_KEY.
Obtenir une clé API
- Ouvrez le tableau de bord Sequenzy.
- Allez dans Paramètres -> Clés API.
- Créez une clé personnelle.
- Ajoutez la clé à la configuration de votre client MCP.
Les clés personnelles commencent par seq_user_. Vous pouvez les révoquer à tout moment dans le tableau de bord.
Outils
Ce serveur expose actuellement 120 outils MCP.
Compte, Entreprises, Configuration
| Outil | Description |
|---|---|
get_account | Obtenir les informations du compte, les entreprises disponibles et l'entreprise actuelle. |
select_company | Définir l'entreprise active pour les appels d'outils futurs. |
get_app_urls | Construire les URL du tableau de bord pour les campagnes, les pages de destination, les séquences, les emails, les paramètres, les domaines et les détails des emails envoyés. |
create_company | Créer une nouvelle entreprise ou marque. |
get_company | Lire les détails de l'entreprise, les informations produit, les couleurs de la marque, le contexte d'écriture IA et les paramètres de localisation. |
update_company | Modifier les informations produit et le contexte de marque que l'IA utilise pour les emails générés. |
create_api_key | Créer une clé API pour une entreprise. |
list_websites | Lister les sites web et domaines d'expéditeur configurés. |
add_website | Ajouter un site web d'expéditeur. Le traitement peut prendre environ 30 secondes. |
check_website | Vérifier si un site web est traité et prêt. |
get_integration_guide | Obtenir des exemples d'intégration spécifiques au framework. |
Abonnés
| Outil | Description |
|---|---|
add_subscriber | Ajouter un abonné avec des attributs, des tags, un statut, un mode d'opt-in et des ID de liste optionnels. |
update_subscriber | Mettre à jour les attributs, ajouter des tags ou supprimer des tags. |
remove_subscriber | Désabonner un abonné ou le supprimer définitivement. |
get_subscriber | Récupérer les détails d'un abonné par email ou ID externe. |
search_subscribers | Rechercher par requête, tags, liste, statut, segment ou pagination. |
Produits et livraison numérique
| Outil | Description |
|---|---|
list_products | Lister les produits synchronisés depuis Stripe, Shopify, WooCommerce, les données manuelles ou l'API Commerce. |
upsert_products | Créer ou mettre à jour jusqu'à 100 produits de l'API Commerce indexés par votre ID produit. |
delete_product | Supprimer un produit précédemment envoyé via l'API Commerce. |
attach_product_file | Joindre un fichier de livraison hébergé ou téléchargé localement à un produit. |
remove_product_file | Supprimer un fichier de livraison de produit joint. |
sync_products | Mettre en file d'attente une synchronisation du catalogue de produits Stripe. |
Une fois qu'un fichier de livraison de produit est joint, les événements d'achat correspondants incluent download.url et download.name, de sorte que les emails déclenchés par un achat peuvent utiliser des balises de fusion comme {{event.download.url}}.
Listes, Tags, Segments
| Outil | Description |
|---|---|
list_tags | Lister tous les tags. |
create_tag | Créer une définition de tag avec une couleur optionnelle. |
update_tag | Mettre à jour la couleur d'un tag. |
delete_tag | Supprimer un tag et le retirer des abonnés. |
list_lists | Lister les listes d'abonnés. |
create_list | Créer une liste d'abonnés. |
update_list | Renommer ou décrire une liste d'abonnés. |
delete_list | Supprimer une liste d'abonnés. |
add_subscribers_to_list | Ajouter jusqu'à 500 abonnés à une liste à partir d'un tableau d'emails. |
remove_subscribers_from_list | Retirer jusqu'à 500 abonnés d'une liste. |
list_segments | Lister les segments enregistrés et leurs comptes. |
create_segment | Créer des segments enregistrés à partir de filtres ou de groupes ET/OU imbriqués. |
update_segment | Mettre à jour le nom du segment, les filtres, le groupe racine ou l'opérateur de jointure. |
delete_segment | Supprimer un segment enregistré. |
get_segment_count | Prévisualiser le nombre d'abonnés actifs pour un segment. |
Pour les exports d'abonnés, search_subscribers accepte listId, listName exact, ou list (ID d'abord, puis nom exact). Si limit est omis, l'outil récupère tous les abonnés correspondants en utilisant des pages API de 100 lignes.
Pour le peuplement de liste en masse, utilisez add_subscribers_to_list ; le point de terminaison API sous-jacent est POST /api/v1/lists/{listId}/subscribers sans le suffixe /bulk :
{
"emails": ["[email protected]", "[email protected]"],
"duplicateStrategy": "skip",
"enrollInSequences": false,
"optInMode": "default"
}
Envoyez au maximum 500 emails par requête. Les limites de débit API standard s'appliquent toujours : 100 requêtes par minute par clé API et 20 requêtes par seconde en rafale. Pour les imports CLI pilotés par CSV, les en-têtes d'email acceptés incluent email, e-mail, email address et mail ; si aucun en-tête reconnu n'existe, le CLI lit la première colonne.
Les filtres de segment prennent en charge les attributs, les événements, l'appartenance à un segment enregistré, les événements d'engagement, les règles d'achat de produit Stripe et les règles d'achat de produit commerce. Utilisez filterJoinOperator: "or" pour les segments correspondant à l'un des critères, ou passez un groupe v2 root pour une logique imbriquée.
Chaque champ de filtre de segment valide ses propres opérateurs :
status,segment:is,is_nottag:contains,not_contains,is_empty,is_not_emptyemail:contains,not_containsemailProvider,list:is,is_not,is_empty,is_not_emptyfirstName,lastName:contains,not_contains,is_empty,is_not_emptyadded:less_than,more_thanattribute:is,is_not,is_empty,is_not_empty,gte,lte,gt,lt,contains,not_containsevent, champs d'engagement email :is,is_not,at_least,less_than_countemailBounced: prend également en chargeis_temporary_bounce,is_permanent_bouncestripeProduct:is,is_not,at_least,less_than_countstripeCurrentProduct,stripeTrialProduct:is,is_not,gte,lte,gt,ltcommerceProduct:is,is_not,at_least,less_than_count
Exemples de filtres de produit Stripe :
{ "field": "stripeProduct", "operator": "is", "value": "prod_pro" }
{ "field": "stripeProduct", "operator": "is_not", "value": "prod_pro" }
{ "field": "stripeProduct", "operator": "at_least", "value": "prod_pro:3" }
{ "field": "stripeProduct", "operator": "less_than_count", "value": "prod_pro:3" }
Les filtres de produits commerciaux correspondent aux produits achetés via des commandes commerciales. Les valeurs peuvent être provider:productId pour les identifiants délimités par fournisseur (shopify, woocommerce ou api), un identifiant produit brut pour correspondre à n'importe quel fournisseur, ou provider:productId:count pour les opérateurs de seuil :
{ "field": "commerceProduct", "operator": "is", "value": "api:starter-kit" }
{ "field": "commerceProduct", "operator": "at_least", "value": "shopify:42:2" }
Les champs d'engagement tels que emailSent, emailDelivered, emailOpened, emailClicked, emailBounced et emailComplained acceptent des fenêtres glissantes comme 7d, 30d, 90d, 180d, all, des valeurs de seuil comme 5:30d, ou une portée de campagne comme campaign:cmp_123.
Synchronisations d'audience (Meta Ads)
| Outil | Description |
|---|---|
list_audience_syncs | Lister les synchronisations segment-audience avec la planification et le dernier statut de synchronisation. |
list_ad_accounts | Lister les comptes publicitaires Meta disponibles pour la synchronisation. |
create_audience_sync | Pousser un segment vers une audience personnalisée Meta selon une planification. |
update_audience_sync | Modifier la fréquence de synchronisation (hourly, daily, weekly) ou mettre en pause/reprendre. |
delete_audience_sync | Supprimer un mappage de synchronisation ; l'audience Meta elle-même est conservée. |
sync_audience_now | Déclencher un téléchargement immédiat en dehors de la planification régulière. |
Nécessite que l'intégration Meta Ads soit connectée dans le tableau de bord Sequenzy (Paramètres -> Intégrations). create_audience_sync accepte un segment existant (segmentId) ou un modèle prêt à l'emploi (predefinedSegmentId, par exemple zero-ltv, no-purchase-1y, recent-buyers, high-spenders-ecom, non-buyers, engaged) - le segment modèle est créé automatiquement lors de la première utilisation, et le premier téléchargement s'exécute immédiatement.
Les audiences sont en ajout uniquement : les abonnés qui quittent ultérieurement le segment restent dans l'audience Meta. Meta exige plus de 100 personnes correspondantes avant qu'une audience puisse être utilisée pour la diffusion d'annonces.
Modèles
| Outil | Description |
|---|---|
list_templates | Lister les modèles avec le statut de localisation. |
get_template | Lire les détails du modèle, le contenu et les variantes localisées. |
create_template | Créer des modèles à partir de HTML ou de blocs Sequenzy. |
update_template | Mettre à jour les métadonnées, les étiquettes, le HTML ou les blocs du modèle. |
delete_template | Supprimer un modèle. |
Tests A/B
| Outil | Description |
|---|---|
list_ab_tests | Lister les tests A/B et les variantes, éventuellement délimités par séquence. |
get_ab_test | Obtenir les variantes, le contenu et le statut de localisation. |
get_ab_test_stats | Obtenir les statistiques agrégées et par variante. |
restart_ab_test | Redémarrer un test A/B arrêté ou terminé. |
update_ab_test_variant | Mettre à jour le sujet, le texte d'aperçu, le HTML ou les blocs d'une variante brouillon. |
create_ab_test | Créer un test A/B de campagne ou de séquence. |
add_ab_test_variant | Ajouter une variante à un test A/B existant. |
delete_ab_test_variant | Supprimer une variante de test A/B brouillon. |
delete_ab_test | Supprimer un test A/B. |
Utilisez get_ab_test pour découvrir les identifiants de variante avant de les modifier. Les mises à jour de variante acceptent soit html soit blocks, pas les deux.
Campagnes
| Outil | Description |
|---|---|
list_campaigns | Lister les campagnes, éventuellement filtrées par statut. |
get_campaign | Obtenir les détails et les statistiques de la campagne. |
get_email_send | Inspecter un enregistrement détaillé d'e-mail envoyé. |
create_campaign | Créer une campagne brouillon à partir de HTML, de blocs, d'un modèle ou de données de campagne. |
update_campaign | Mettre à jour une campagne brouillon, y compris les données de campagne et les listes calculées. |
schedule_campaign | Planifier un brouillon ou replanifier une campagne planifiée existante. |
send_test_email | Envoyer un e-mail de test à une adresse. |
cancel_campaign | Annuler une campagne planifiée ou en cours d'envoi. |
pause_campaign | Mettre en pause une campagne en cours d'envoi. |
resume_campaign | Reprendre une campagne en pause, en répartissant éventuellement la livraison dans le temps. |
delete_campaign | Supprimer une campagne. |
duplicate_campaign | Dupliquer une campagne dans un nouveau brouillon. |
resend_campaign_to_non_openers | Créer un brouillon de renvoi pour les membres de l'audience d'origine qui n'ont pas ouvert une campagne envoyée. |
Pages de destination
| Outil | Description |
|---|---|
list_landing_pages | Lister les pages de destination avec le statut, les métriques, le contenu et les URL. |
get_landing_page | Obtenir les détails de la page de destination, le contenu du constructeur, les métriques et les URL publiques. |
create_landing_page | Créer une page de destination brouillon à partir du contenu du modèle par défaut ou de JSON. |
update_landing_page | Modifier le nom, le slug ou le contenu complet compatible avec l'éditeur d'une page de destination. |
publish_landing_page | Publier une page de destination, en enregistrant éventuellement les modifications d'abord. |
unpublish_landing_page | Remettre une page de destination à l'état de brouillon, en enregistrant éventuellement les modifications d'abord. |
delete_landing_page | Supprimer une page de destination non publiée. |
connect_landing_page_domain | Connecter un domaine de page de destination personnalisé et renvoyer les détails de configuration DNS. |
update_landing_page_domain_settings | Remplacer ou vérifier les paramètres de domaine personnalisé de la page de destination. |
Le contenu de la page de destination utilise le schéma JSON compatible avec l'éditeur de Sequenzy avec version, template, seo, theme et blocks. Les domaines de page de destination personnalisés nécessitent un enregistrement CNAME pointant vers pages.sequenzydns.com ; appelez update_landing_page_domain_settings avec verify: true après la propagation des modifications DNS.
Séquences
| Outil | Description |
|---|---|
list_sequences | Lister les séquences d'e-mails et le statut d'automatisation. |
get_sequence | Obtenir les détails de la séquence, y compris l'étape nodeId, le emailId lié, le sujet, le texte d'aperçu et les blocs. |
create_sequence | Créer des séquences générées par IA ou à étapes explicites. |
update_sequence | Mettre à jour les paramètres de la séquence, le comportement d'inscription, les étapes existantes, la logique de branchement ou insérer des étapes linéaires. |
insert_sequence_step | Insérer une nouvelle étape d'e-mail, éventuellement avec un nœud de délai avant celle-ci. |
enable_sequence | Activer une séquence. |
disable_sequence | Geler une séquence, bloquant les nouvelles inscriptions et mettant en attente les destinataires actuels. |
pause_sequence_enrollments | Arrêter les nouvelles inscriptions pour une séquence active pendant que les destinataires actuels continuent. |
resume_sequence_enrollments | Rouvrir les nouvelles inscriptions pour une séquence active sans modifier les destinataires actuels. |
enroll_subscribers_in_sequence | Inscrire jusqu'à 500 abonnés par e-mail, identifiant d'abonné ou les deux, éventuellement à un nœud cible. |
cancel_sequence_enrollments | Arrêter les inscriptions actives ou en attente par abonné ou par valeurs de champ d'événement d'entrée. |
delete_sequence | Supprimer une séquence. |
La création de séquence prend en charge :
trigger: "segment_entered"plussegmentIdpour les automatisations d'entrée de segment enregistré.trigger: "event_received"plus{{event.*}}pour les balises de fusion dans les sujets ou le contenu du corps.trigger: "inactivity"pluseventName,inactiveDaysetinactivityBaselinefacultatif (sequence_created_atousubscriber_created_at).goalpour le contenu d'e-mail généré par IA.stepsexplicite avec Sequenzyblocks.stepsexplicite avec HTML, que Sequenzy convertit en blocs modifiables.- Attentes fixes via
delay/delayMs, ou attentes dynamiques basées sur un champ de date viawaitUntilpour les rappels de renouvellement, les suivis de rendez-vous, les relances d'expiration d'essai et autres dates spécifiques à un événement. - Étapes d'action de remise qui exposent des balises de fusion comme
{{discount.code}}et{{discount.percentOff}}. enrollmentMode: "matching_field"etenrollmentFieldPathpour les automatisations d'événements spécifiques aux produits, variantes, commandes ou abonnements.
Les mises à jour de séquence prennent en charge insertSteps pour ajouter de nouvelles étapes linéaires après un nodeId renvoyé par get_sequence. Omettez afterNodeId uniquement lors de l'ajout à une séquence avec exactement une queue linéaire. insertSteps prend en charge les étapes ajoutables qui ne nécessitent pas d'enregistrements compagnons, telles que les e-mails, les délais, les actions de balise/liste, les mises à jour d'attributs, les remises, les conditions, les étapes d'attente d'événement et les webhooks. Utilisez branch pour les branches si/sinon multi-chemins ; fournissez soit branch soit insertSteps, pas les deux. Les conditions de branche prennent en charge les vérifications de présence et d'absence de balise avec has_tag et does_not_have_tag, ainsi que les listes, les segments enregistrés, les événements, les liens cliqués et les comparaisons de champs. Les tableaux emails et steps ne modifient que les étapes d'e-mail existantes par nodeId, emailId ou l'ordre du tableau ; utilisez insertSteps pour créer de nouvelles étapes et incluez un delay, delayMs ou waitUntil au niveau de l'étape lorsque l'e-mail inséré a besoin d'un minuteur. waitUntil accepte un champ de date de l'événement déclencheur plus offset facultatif, direction (before ou after) et missingAction (continue ou exit). Pour les séquences actives, passez confirmStructuralChange: true avec insertSteps ou branch uniquement après avoir confirmé l'impact sur le flux en direct.
Exécutez cancel_sequence_enrollments avec dryRun: true avant d'appliquer une annulation groupée.
Style des blocs d'e-mail
Les outils qui acceptent blocks persistent le style visuel par bloc sous l'objet styles d'un bloc :
{
"type": "card",
"title": "Your update",
"content": "Everything is ready.",
"variant": "default",
"styles": {
"backgroundColor": "#f8fafc",
"backgroundOpacity": 85,
"borderColor": "#cbd5e1",
"borderWidth": 1,
"borderRadius": 12
}
}
Pour la compatibilité avec les anciennes invites d’agent, les clés de style de niveau supérieur telles que backgroundColor, backgroundOpacity, borderColor, borderWidth et borderRadius sont également acceptées et enregistrées sous styles.
Email transactionnel
| Outil | Description |
|---|---|
list_transactional_emails | Lister les modèles transactionnels et les slugs d’API. |
get_transactional_email | Lire un email transactionnel par ID ou slug. |
create_transactional_email | Créer un modèle d’email transactionnel. |
update_transactional_email | Mettre à jour les métadonnées transactionnelles ou le contenu du corps. |
send_email | Envoyer un seul email transactionnel par modèle ou HTML. |
Les variables send_email prennent en charge les tableaux imbriqués pour les blocs répétables, tels que { "event": { "items": [...] } }.
Analytique
| Outil | Description |
|---|---|
get_stats | Obtenir des statistiques globales pour 7d, 30d ou 90d. |
get_campaign_stats | Obtenir les performances détaillées d’une campagne. |
get_sequence_stats | Obtenir les performances d’une séquence. |
list_campaign_events | Lister les événements bruts d’email paginés pour une campagne. |
list_sequence_events | Lister les événements bruts d’email paginés pour une séquence. |
get_subscriber_activity | Obtenir les statistiques d’email, l’activité et les inscriptions d’un abonné. |
Les outils d’analytique excluent par défaut les ouvertures/clics détectés des bots, scanners, aperçus de liens et assets suivis. Passez includeMachineEngagement: true à get_stats, get_campaign_stats, get_sequence_stats, get_ab_test_stats, get_subscriber ou get_subscriber_activity lorsque vous avez besoin de diagnostics d’engagement bruts ; les lignes d’activité d’ouverture/clic incluses exposent les champs machine, engagementQuality et classificationReasons là où l’API renvoie l’activité au niveau de l’événement.
Équipe, boîte de réception, webhooks
| Outil | Description |
|---|---|
list_team_members | Lister les membres de l’équipe et les invitations en attente. |
invite_team_member | Inviter un coéquipier en tant qu’admin ou observateur, avec accès optionnel à la facturation. |
cancel_team_invitation | Annuler une invitation d’équipe en attente. |
list_conversations | Lister les conversations de réponse des abonnés avec filtres de statut et non lus. |
get_conversation | Lire une conversation et son historique de messages. |
reply_to_conversation | Envoyer une réponse sortante ou ajouter une note interne. |
update_conversation_status | Ouvrir ou fermer une conversation. |
mark_conversation_read | Marquer tous les messages d’une conversation comme lus. |
list_webhooks | Lister les points de terminaison de webhook sortants. |
create_webhook | Créer un webhook sortant et renvoyer son secret de signature unique. |
update_webhook | Mettre à jour le nom, l’URL, les événements ou le statut du webhook. |
delete_webhook | Supprimer définitivement un point de terminaison de webhook et l’historique de livraison. |
test_webhook | Envoyer un événement de test à un point de terminaison de webhook. |
list_webhook_deliveries | Lister les tentatives de livraison récentes pour un webhook. |
replay_webhook_delivery | Rejouer une livraison de webhook. |
Génération IA
| Outil | Description |
|---|---|
generate_email | Générer des blocs d’email à partir d’une invite. |
generate_sequence | Générer une séquence multi-email à partir d’un objectif. |
generate_subject_lines | Générer des variantes de ligne d’objet A/B. |
Le contenu généré est renvoyé en tant que brouillon pour révision.
Ressources
Le serveur expose également des ressources MCP en lecture seule.
| Ressource | Description |
|---|---|
sequenzy://dashboard | Statistiques globales en direct pour les 7 derniers jours. |
sequenzy://company | Paramètres actuels de l’entreprise et de localisation. |
sequenzy://campaigns/recent | 10 dernières campagnes avec statut et statistiques de base. |
sequenzy://subscribers/recent | Abonnés ajoutés le plus récemment. |
sequenzy://subscribers/engaged | Abonnés les plus actifs ou engagés. |
sequenzy://sequences | Toutes les séquences avec statut. |
sequenzy://templates | Modèles avec statut de localisation. |
sequenzy://segments | Segments enregistrés avec nombre d’abonnés. |
sequenzy://tags | Tags avec compteurs d’utilisation. |
sequenzy://health | Métriques de délivrabilité et état de santé. |
sequenzy://app-routes | Modèles de route du tableau de bord et onglets de paramètres. |
Exemples d’invites
Add [email protected] with tags "vip" and "developer", then put them on the beta list.
Create a 4-email churn prevention sequence for users whose subscription expires soon. Leave it in draft mode.
Create a segment for subscribers who bought Stripe product prod_pro at least 3 times.
Draft a campaign about our new analytics dashboard, target the Pro users segment, and send a test to me.
How did the last campaign perform compared with the one before it?
Sécurité
- Utilisez des clés API personnelles, pas des secrets d’équipe partagés.
- Les clés n’accèdent qu’aux entreprises auxquelles votre utilisateur Sequenzy peut accéder.
- Révoquez les clés depuis Paramètres -> Clés API lorsque l’accès n’est plus nécessaire.
- Gardez les invites d’approbation client activées pour les envois, la planification, les suppressions et les modifications en masse.
- Préférez les flux de travail en mode brouillon pour les campagnes et les séquences, puis révisez dans Sequenzy avant le lancement.
Dépannage
SEQUENZY_API_KEY environment variable is required
Définissez SEQUENZY_API_KEY dans la configuration du client MCP, ou exécutez :
npx @sequenzy/setup
Clé API invalide
Créez une nouvelle clé personnelle dans Paramètres -> Clés API, mettez à jour votre configuration MCP et redémarrez le client.
Ressources en double
Si un appel d’outil crée un nom de segment ou un domaine d’envoi en double, le serveur renvoie un code stable, un description adapté aux agents, un resolution concret et un docsUrl. Pour les segments, appelez list_segments et réutilisez l’ID de segment existant ou choisissez un nom différent. Pour les sites web, appelez list_websites ; si le domaine n’est pas listé pour l’entreprise sélectionnée, il appartient à une autre entreprise ou un autre compte et doit être supprimé, réassigné ou remplacé par un domaine d’envoi différent.
Les outils n’apparaissent pas
- Confirmez que
npxest disponible dans l’environnement utilisé par le client. - Redémarrez le client MCP après avoir modifié la configuration.
- Vérifiez que la configuration se trouve au bon emplacement spécifique au client.
Problèmes de réseau ou d’URL d’API
Le serveur utilise https://api.sequenzy.com par défaut. Si vous le remplacez, vérifiez que SEQUENZY_API_URL pointe vers une URL de base d’API Sequenzy accessible.
Développement
bun install
bun test
bun run type-check
bun run build
Les schémas d’outils MCP doivent rester compatibles avec les clients stricts :
- Les racines
inputSchemades outils doivent être des schémastype: "object"simples. - Ne publiez pas
anyOfn’importe où dans les schémas d’outils. - Ne placez pas
oneOf,allOf,enumounotà la racine d’un schéma d’outil. - Appliquez les exigences conditionnelles dans les gestionnaires et couvrez-les par des tests.
Ce dépôt autonome reflète le package MCP maintenu dans le monorepo principal de Sequenzy. Voir AGENTS.md pour les règles de synchronisation.
Licence
MIT
Découverte native pour les agents
Sequenzy publie des manifestes lisibles par machine pour les réseaux d’agents et la découverte de style A2A :
- Point de terminaison MCP distant :
https://api.sequenzy.com/v1/mcp - Manifeste de capacité d’agent :
agent-capability.json - Carte d’agent de style A2A :
.well-known/agent-card.json - Métadonnées de compétence OpenClaw/Moltbot :
openclaw/skill.json - Guide d’utilisation OpenClaw/Moltbot :
openclaw/SKILL.md
Ces fichiers décrivent Sequenzy comme une capacité d’automatisation d’email autorisée pour les agents. Ils excluent explicitement les cas d’utilisation de scraping, de spam et de démarchage à froid non sollicité.