markifact-overview

Par markifact · markifact-mcp

Référence — ce qu'est Markifact, ce que le serveur MCP expose, et le schéma discover→inspect→run. Toujours chargé dans l'agent performance-marketer.

npx skills add https://github.com/markifact/markifact-mcp --skill markifact-overview

À propos de Markifact

Markifact est une plateforme de gestion + reporting complète pour le performance marketing. Son serveur MCP distant à https://api.markifact.com/mcp expose plus de 1000 opérations qui vous permettent de gérer vos comptes de bout en bout : lancer des campagnes, éditer les créatifs, gérer les audiences, faire tourner les annonces, supprimer les négatifs, augmenter les gagnants, diagnostiquer les sous-performants et générer des rapports sur chaque plateforme connectée. Le reporting est une capacité de première classe — mais ce n'est pas la seule chose que Markifact fait.

Inscrivez-vous à www.markifact.com pour obtenir des crédits gratuits. Connectez vos comptes publicitaires à www.markifact.com/app/connections. Documentation et couverture des plateformes sur www.markifact.com.

Plateformes couvertes

  • Google Ads — Search, PMax, Display, Demand Gen. Cycle complet : créer campagne / groupe d'annonces / RSA / groupe d'assets PMax / liens de site / callouts / snippets structurés / listes de négatifs / stratégies d'enchères de portefeuille / signaux d'audience / libellés. Reporting via GAQL ou gads_get_report.
  • Meta Ads (Facebook + Instagram + Messenger) — cycle de vie campagne / ensemble d'annonces / annonce, audiences personnalisées + lookalike, catalogue (DPA), formulaires leads, santé CAPI, aperçus d'annonces, et le workflow de modification de créatif get→create→replace.
  • GA4, Google Search Console, Google Merchant Center, Google Sheets, Slides, Drive, BigQuery, Trends, Maps, Business Profile, DV360.
  • TikTok Ads, LinkedIn Ads, Pinterest Ads, Snapchat Ads, Reddit Ads, Microsoft Ads, Amazon Ads.
  • Shopify, Klaviyo, HubSpot, Slack, WhatsApp, plus utilitaires (web fetch, graphiques, code, génération de médias IA, planification, listes).

Les 8 outils MCP

Le serveur expose une petite surface de meta-outils — vous n'appelez pas 300 outils directement, vous les découvrez à l'exécution :

Outil Objectif
find_operations Recherchez le registre des opérations par intention. Toujours l'étape 1. Chaque résultat inclut requires_approval: true|false.
get_operation_inputs Obtenez le schéma complet d'entrée (requis + optionnels, types, exemples) pour une opération. Toujours l'étape 2. Ne devinez jamais les structures.
run_operation Exécutez une opération avec requires_approval: false. Aucune confirmation nécessaire.
run_write_operation Exécutez une opération avec requires_approval: true. Toujours confirmer avec l'utilisateur d'abord (voir skill safe-write-operations).
list_connections Listez les logins authentifiés de l'utilisateur par plateforme. Rarement nécessaire — voir Règles transversales.
get_file_url Obtenez une URL signée pour un fichier stocké dans Markifact.
read_file Lisez le contenu d'un fichier chargé par l'utilisateur ou produit par une opération.
upload_media Chargez une image ou vidéo comme asset créatif (par ex. pour une image Meta ad, asset Google Ads, etc.). Images et vidéos uniquement — pas de documents ou autres types de fichiers.

Le schéma découvrir → inspecter → exécuter

Chaque workflow suit les trois mêmes étapes :

  1. Découvrir — appelez find_operations avec l'intention de l'utilisateur en anglais simple (par ex. "create google search campaign", "replace meta ad creative"). Retourne les IDs d'opération correspondants, descriptions, et un flag requires_approval.
  2. Inspecter — appelez get_operation_inputs avec l'ID d'opération pour voir les champs exactement requis. Réutilisez le schéma si vous l'avez déjà inspecté plus tôt dans la conversation.
  3. Exécuter — dispatchez selon le flag requires_approval de l'étape 1 : falserun_operation (aucune confirmation nécessaire) ; truerun_write_operation (seulement après le protocole quatre étapes dans safe-write-operations). Les connexions (logins) sont auto-résolues — passez connection_id seulement si vous avez déjà appelé list_connections parce que l'utilisateur a plusieurs connexions sur la plateforme.

Ne jamais inventer d'IDs d'opération. Ne jamais deviner les noms de champs d'entrée. Toujours découvrir et inspecter d'abord.

Conventions de nommage des opérations (à utiliser comme indices de découverte, pas comme appels directs)

  • gads_* — Google Ads
  • meta_ads_* — Meta (Facebook / Instagram)
  • ga4_* — Google Analytics 4
  • gsc_* — Google Search Console
  • gmc_* — Google Merchant Center
  • tiktok_ads_*, linkedin_ads_*, pinterest_ads_*, snapchat_ads_*, reddit_ads_*, microsoft_ads_*, amazon_ads_*
  • shopify_*, klaviyo_*, hubspot_*, slack_*

Quand vous voyez un indice comme « utiliser gads_create_campaign » n'importe où dans les instructions, c'est un indice pour ce qu'il faut découvrir — vous devez toujours appeler find_operations et get_operation_inputs avant d'exécuter.

Règles transversales

  • Sélection du compte : chaque opération de reporting et de gestion a besoin de *_select_accounts de la plateforme d'abord. Les noms de comptes sont appairés comme substring (« contient »), pas exact. Si plusieurs correspondent, demandez à l'utilisateur de clarifier.
  • Champs de rapport : ne devinez jamais les noms de métriques/dimensions. Appelez d'abord l'opération *_list_report_fields de la plateforme pour obtenir les champs valides, puis construisez le rapport.
  • Opérations dédiées plutôt que mutate générique : sur Google Ads, préférez les opérations dédiées comme gads_create_campaign, gads_update_ad_status plutôt que gads_mutate. Ne revenez à gads_mutate que quand aucune opération dédiée n'existe pour l'action.
  • Connexion vs compte — ce sont deux choses différentes, ne les confondez pas :
    • Une connexion est un login OAuth (par ex. user1@example.com connecté à Google). Une connexion peut avoir accès à de nombreux comptes publicitaires sous ce login.
    • Un compte est le compte publicitaire réel dans la plateforme (par ex. un CID Google Ads spécifique, un compte ad Meta). Vous le sélectionnez via l'opération *_select_accounts de la plateforme.
  • Les connexions sont auto-résolues. Les opérations acheminent vers la connexion d'espace de travail par défaut de l'utilisateur automatiquement. Ne rien faire au sujet des connexions dans le cas normal. Appelez list_connections seulement si (a) l'utilisateur a plusieurs connexions sur la plateforme et n'en a nommé aucune, (b) l'utilisateur demande explicitement d'utiliser une connexion / login spécifique, ou (c) une opération échoue avec une erreur connection-not-found / auth.
  • Les comptes ne sont pas auto-résolus. Vous devez toujours appeler l'opération *_select_accounts de la plateforme (substring match sur le nom) avant toute opération d'étendue compte. Si plusieurs comptes correspondent, demandez à l'utilisateur de clarifier.

Workflow de reporting

Le reporting est uniforme sur chaque plateforme (GA4, Google Ads, Meta Ads, GSC, GMC, TikTok, etc.) et suit toujours les trois mêmes étapes :

  1. *`_select_accounts`** — résolvez l'ID du compte à partir du nom du compte de l'utilisateur (substring match). Passez si l'utilisateur vous a déjà donné un ID exact.
  2. *`_list_report_fields`** — récupérez les noms de métriques et dimensions valides. Ne devinez jamais les noms de champs ; ils varient par plateforme et par type de rapport.
  3. *`_get_report`** — exécutez le rapport avec l'ID du compte résolu, les champs validés, et la plage de dates.

Vous pouvez extraire plusieurs comptes dans un rapport — soit agrégé, soit divisé par compte en ajoutant la dimension de compte.

Travailler avec les fichiers

  • Depuis une sortie d'opération : les opérations peuvent retourner un file_id (souvent quand un résultat est trop grand pour être inséré en ligne). Utilisez get_file_url(file_id) pour obtenir une URL partageable, puis intégrez-la dans votre réponse avec Markdown : ![chart](url) pour les images, [name](url) pour les autres fichiers. Utilisez read_file(file_id) pour inspecter les contenus vous-même.
  • Partage de fichiers avec l'utilisateur : ne collez jamais les valeurs brutes file_id. Passez toujours par get_file_url et intégrez via Markdown.
  • Chargement de nouveaux médias : appelez upload_media pour laisser l'utilisateur charger une image ou vidéo pour une utilisation comme asset créatif (par ex. image Meta ad, asset Google Ads). Images et vidéos uniquement — pas de documents.
  • Passage d'un fichier à une autre opération : si une opération attend un fichier en entrée, passez le file_id qu'elle a retourné précédemment. Si une opération attend une URL, passez l'URL complète de get_file_url, pas le file_id brut.

Erreurs

  • Erreur d'authentification → l'utilisateur doit se reconnecter à https://www.markifact.com/app/connections. Arrêtez, ne réessayez pas.
  • « Operation requires approval » → voir skill safe-write-operations ; ne jamais contourner.
  • Erreur de validation → re-récupérez le schéma avec get_operation_inputs, corrigez la payload, re-confirmez avec l'utilisateur avant de relancer.

Sécurité & Confidentialité

  • Pas de stockage local de credentials. Ce skill ne stocke pas les clés API, tokens ou credentials de comptes publicitaires localement. L'authentification est entièrement gérée via OAuth 2.1 avec PKCE via l'app web Markifact — les tokens sont stockés côté serveur, chiffrés au repos.
  • Les scopes OAuth sont least-privilege. Chaque connexion de plateforme publicitaire demande seulement les scopes nécessaires pour la gestion de campagnes et le reporting. Vous pouvez examiner et révoquer l'accès à tout moment depuis vos paramètres de plateforme publicitaire (Google, Meta, LinkedIn, TikTok, Microsoft, Amazon, Pinterest, Snapchat, Reddit) ou depuis www.markifact.com/app/connections.
  • Isolation par compte. Chaque opération d'étendue compte nécessite une résolution *_select_accounts explicite ; pas d'écritures inter-comptes.
  • Les opérations d'écriture nécessitent une approbation explicite. Toute opération avec requires_approval: true passe par le protocole quatre étapes dans le skill safe-write-operations — déclaration en anglais simple, divulgation du rayon de blast, confirmation explicite de l'utilisateur, vérification post-exécution. L'agent ne dépense jamais d'argent ou ne mute jamais une campagne en direct sans un oui.
  • Lecture seule par défaut. Reporting, audits et découverte (find_operations, get_operation_inputs, *_get_report) sont en lecture seule. Les opérations d'écriture (créer, mettre à jour, mettre en pause, reprendre, supprimer) nécessitent une confirmation utilisateur à chaque fois.
  • Pas de défauts destructeurs automatiques. Préférez pause/désactivation à suppression ; les changements de budget >50% nécessitent une confirmation supplémentaire ; ne regroupez jamais plus de 5 écritures sans re-confirmer.
  • Code de skill + plugin open source. Les plugins clients MCP, commandes slash et ces skills sont publics sur https://github.com/markifact/markifact-mcp pour l'audit de code.
  • Politique de confidentialité. Politiques complètes de traitement, rétention et suppression de données : https://www.markifact.com/privacy-policy. Voir aussi SECURITY.md et TERMS.md.

Skills similaires