Aller au contenu principal

Serveur MCP

Le serveur MCP (Model Context Protocol) de Webmarketer permet de connecter un assistant IA à vos données Webmarketer. Une fois connecté, l'assistant peut lister vos projets, interroger vos performances marketing, analyser vos modèles d'attribution, diagnostiquer un problème de tracking ou encore mettre à jour certaines de vos données, en réponse à une question posée en langage naturel.

Le MCP est un protocole ouvert, pris en charge par la plupart des assistants IA du marché. Là où l'API s'adresse aux développeurs qui écrivent une intégration, le serveur MCP s'adresse à l'assistant lui-même : il lui décrit les outils disponibles et la manière de les utiliser correctement.

URL du serveurhttps://mcp.webmarketer.io/mcp
TransportHTTP (Streamable HTTP)
AuthentificationOAuth 2.1, avec votre compte Webmarketer
AccèsLecture, et écriture pour certains outils

Connecter un assistant​

La connexion se fait en deux temps :

  1. Déclarez l'URL du serveur dans votre assistant
  2. À la première utilisation, l'assistant vous redirige vers la page de connexion Webmarketer. Connectez-vous et autorisez l'accès : l'assistant reçoit alors un jeton lui permettant d'interroger Webmarketer en votre nom

Aucune clé ni aucun jeton n'est à copier : l'assistant s'enregistre et s'authentifie de lui-même.

Claude​

Depuis claude.ai ou l'application Claude Desktop, ouvrez Paramètres > Connecteurs, cliquez sur Ajouter un connecteur personnalisé, puis saisissez l'URL du serveur :

https://mcp.webmarketer.io/mcp

Avec Claude Code, ajoutez le serveur en ligne de commande :

claude mcp add --transport http webmarketer https://mcp.webmarketer.io/mcp

ChatGPT​

Depuis chatgpt.com, ouvrez Plugins > Ajouter > Ajouter un serveur MCP personnalisé, puis saisissez l'URL du serveur. L'authentification se fait par OAuth.

Cursor​

Ajoutez le serveur au fichier ~/.cursor/mcp.json (ou .cursor/mcp.json à la racine d'un projet) :

{
"mcpServers": {
"webmarketer": {
"url": "https://mcp.webmarketer.io/mcp"
}
}
}
Autres assistants

Tout assistant compatible MCP qui prend en charge le transport HTTP et l'authentification OAuth peut se connecter, à condition que son adresse de retour OAuth soit l'une de celles citées ci-dessus ou une adresse locale (localhost). Les assistants installés sur votre poste utilisent généralement une adresse locale.

Droits d'accès​

L'assistant agit avec vos propres droits : il accède aux mêmes espaces de travail et aux mêmes projets que vous, et chaque action est soumise au rôle dont vous disposez. Un outil qui demande une permission que vous n'avez pas renvoie une erreur.

La plupart des outils ne font que lire vos données. Certains les modifient : ils créent ou mettent à jour des types d'événements, renseignent les états et les statistiques d'événements, ou enregistrent des interactions hors ligne (voir Écrire des données). Le serveur signale ces outils comme des écritures, pour que votre assistant puisse vous demander confirmation avant de les appeler ; qu'il le fasse dépend de l'assistant et de ses réglages. Une écriture demande aussi la permission de modification correspondante dans votre rôle.

Le jeton remis à l'assistant est de courte durée (15 minutes) et l'assistant le renouvelle de lui-même. Ce jeton n'est valable que pour le serveur MCP.

Outils disponibles​

Le serveur expose les outils ci-dessous. L'assistant choisit lui-même les outils à appeler selon votre question : vous n'avez pas à les nommer.

Découverte et contexte​

OutilRôle
whoamiIdentifie le compte connecté et liste les espaces de travail et les projets auxquels il a accès. Point d'entrée de toute session
list_workspacesListe les espaces de travail accessibles (identifiant, nom, slug)
list_projectsListe les projets d'un espace de travail (nom, domaine, devise, date de création)
get_projectDécrit un projet : domaine, devise, espace de travail, date de création, état de configuration et durée de rétention des données
get_project_earliest_dateDonne la date la plus ancienne pour laquelle des données sont disponibles, selon la création du projet et la rétention de l'espace de travail
get_project_fieldsListe les champs d'événements du projet : clé, libellé, type, entité et description métier
list_event_typesListe les types d'événements suivis, avec leurs champs et leur configuration
get_documentation_indexListe les pages de cette documentation (titre, description, URL)
get_documentation_pageRécupère le contenu d'une page de cette documentation

Analyse marketing​

OutilRôle
query_indexAgrège les données marketing de l'index d'analyse : métriques, dimensions de régie, période et modèle d'attribution
get_event_insightsAgrège les métriques des événements (nombre, chiffre d'affaires…) sur une période, à la date de survenue des événements
get_sql_schemaDécrit le schéma du datawarehouse : tables, colonnes, clés primaires et relations
dry_run_sqlValide une requête SQL sans l'exécuter et estime le volume de données traité
run_sqlExécute une requête SQL sur le datawarehouse (100 lignes par défaut, 500 au maximum)
list_attribution_modelsListe les modèles d'attribution du projet
get_attribution_pathsDétaille l'attribution d'un événement : les interactions de son parcours de conversion et le crédit reçu par chacune, par modèle d'attribution
compare_attribution_modelsMesure les mêmes métriques, sur la même période, sous plusieurs modèles d'attribution côte à côte
get_non_attributable_reportExplique, cause par cause, pourquoi des conversions ont été créditées au nœud non attribuable
list_custom_columnsListe les colonnes personnalisées du projet : les KPI définis à partir de ses métriques (CPL, ROAS, taux de conversion…)

Sources de trafic et régies publicitaires​

OutilRôle
list_integrationsListe les comptes de régies publicitaires configurés sur le projet (un compte Google Ads, un compte Meta…)
get_integrations_descriptionDécrit les types de régies du projet (Google Ads, Meta…) et la hiérarchie de leurs nœuds
get_ads_filtersListe les filtres disponibles pour cibler des nœuds de régie
search_ads_nodesRecherche les nœuds de régie (campagnes, publicités…) correspondant à un filtre
get_ads_nodesLit des nœuds de régie dont on connaît l'identifiant, ou les enfants d'un nœud
get_integration_sync_statusIndique si les dépenses et les clics d'un compte de régie ont été importés sur une période, et quelles publicités échouent à la vérification de leur URL de tracking
get_credentials_statusIndique l'état des connexions aux régies publicitaires : validité, expiration, échecs de renouvellement
list_custom_ads_campaignsListe les campagnes d'un connecteur personnalisé
list_custom_ads_outlaysListe les dépenses déclarées sur une campagne d'un connecteur personnalisé
list_custom_interaction_rulesListe les règles d'interaction personnalisées, dans leur ordre d'évaluation
simulate_interaction_rule (bientôt disponible)Mesure les sessions qu'une règle d'interaction personnalisée rattacherait, avant de l'enregistrer
get_interaction_rules_recompute_status (bientôt disponible)Indique si les chiffres historiques reflètent déjà la dernière modification des règles d'interaction

Événements​

OutilRôle
search_eventsRecherche les événements du projet (commandes, leads, appels…), du plus récent au plus ancien, avec leurs champs et leurs métriques
get_eventLit un événement traité : son type, ses champs, ses états, ses statistiques et son utilisateur
get_raw_eventLit un événement tel qu'il a été reçu, avant traitement, pour vérifier ce qui a été envoyé

Interactions et utilisateurs​

OutilRôle
search_usersRecherche des utilisateurs à l'aide de filtres sur leurs champs, leurs événements et leurs métriques
get_user_metricsListe les états et les statistiques enregistrés sur les événements d'un utilisateur
get_customer_journeyRestitue le profil d'un utilisateur et son parcours client : sessions et interactions hors ligne, tous appareils confondus
search_interactionsRecherche les interactions d'un projet : sessions et interactions hors ligne
list_traffic_filtersListe les filtres de trafic du projet et leur règle
list_excluded_sessionsCompte, dans le temps, les sessions exclues par les filtres de trafic

Diagnostic et qualité des données​

OutilRôle
search_trash_eventsRecherche les événements rejetés et la cause de leur rejet
get_trash_events_count_by_dateCompte les événements rejetés par jour, pour repérer un pic
get_alertsListe les alertes d'un projet : identifiants, synchronisation des régies, tracking, limites d'événements rejetés
get_tracking_statusDonne le résultat de la dernière vérification du sous-domaine de tracking (DNS, certificat SSL)
get_tracking_scriptDonne le script de tracking exact à installer sur le site du projet
get_workspace_alertsListe les alertes d'un espace de travail : problèmes de facture, changements d'abonnement, limites de quota
list_uptime_checksIndique la disponibilité et le temps de réponse des pages de destination de vos publicités

Facturation et limites du plan​

OutilRôle
get_workspace_billingDonne le plan, l'état de l'abonnement et la prochaine facture de l'espace de travail
get_billing_usageDonne les limites du plan (projets, intégrations, interactions mensuelles…) et la consommation actuelle
get_workspace_limitationsDonne les limites fonctionnelles du plan de l'espace de travail
get_project_limitationsDonne les limites fonctionnelles du plan d'un projet

Tableaux de bord et audiences​

OutilRôle
list_dashboardsListe les tableaux de bord du projet
list_widgetsListe les widgets d'un tableau de bord et leur configuration
get_widget_data (bientôt disponible)Renvoie les données qu'affiche un widget de tableau de bord
list_audiencesListe les audiences enregistrées du projet, avec leur définition et leur taille
get_audienceDétaille une audience enregistrée : définition complète, dernière taille connue et historique
preview_audienceValide la définition d'une audience et renvoie sa taille et un échantillon d'utilisateurs

Écrire des données​

Ces outils modifient vos données. Votre assistant peut vous demander confirmation avant de les appeler (voir Droits d'accès).

OutilRôle
create_event_typeCrée un type d'événement et les champs que portent ses événements
update_event_typeModifie un type d'événement : son nom, ses champs (ajoutés, modifiés ou supprimés un par un) ou son caractère attribuable
update_event_stateRenseigne un état sur un événement, comme un lead qualifié ou une vente signée
update_event_statisticRenseigne une statistique d'un événement, comme le montant d'un devis ou un chiffre d'affaires CRM
ingest_offline_interactionEnregistre une interaction hors ligne (appel, visite en magasin, lead CRM) sur une campagne d'un connecteur personnalisé
ingest_event (bientôt disponible)Envoie un événement et renvoie son identifiant, ou la raison de son refus
upsert_custom_ads_campaign (bientôt disponible)Crée ou met à jour une campagne d'un connecteur personnalisé
upsert_custom_ads_outlay (bientôt disponible)Déclare les dépenses d'une campagne d'un connecteur personnalisé
create_interaction_rule (bientôt disponible)Crée une règle d'interaction personnalisée
update_interaction_rule (bientôt disponible)Modifie une règle d'interaction personnalisée
delete_interaction_rule (bientôt disponible)Supprime une règle d'interaction personnalisée
reorder_interaction_rules (bientôt disponible)Change l'ordre d'évaluation des règles d'interaction personnalisées
trigger_interaction_rules_recompute (bientôt disponible)Réapplique les règles d'interaction personnalisées à l'historique du projet
Règles d'interaction

Une modification des règles d'interaction personnalisées s'applique rétroactivement : tout l'historique du projet est recalculé, et les chiffres attribués à vos campagnes changent en conséquence.

Bien interpréter les réponses​

Deux notions propres à Webmarketer conditionnent la justesse des réponses. L'assistant en est informé, mais il est utile de les avoir en tête pour formuler vos questions et vérifier ses réponses.

La date d'attribution. query_index filtre sur la date de l'interaction marketing, et non sur celle de la conversion : un achat effectué le 15 février et attribué à un clic du 10 février apparaît au 10 février. get_event_insights filtre au contraire sur la date à laquelle l'événement a eu lieu. Voir Dates d'attribution.

Les crédits d'attribution. Les valeurs attribuées sont des crédits, répartis entre les points de contact de chaque parcours de conversion, et non des décomptes : 4866,39 commandes attribuées correspondent à 4 866,39 crédits, et non à 4 866 commandes. Voir Modèles d'attribution.

Exemples de questions
  • Quelles campagnes Google Ads ont généré le plus de ventes le mois dernier, en attribution linéaire ?
  • Compare les modèles d'attribution premier clic et dernier clic sur mes leads de septembre.
  • Pourquoi n'ai-je reçu aucun événement hier sur mon projet ?