Aller au contenu principal
Docs reporting

Skills MCP

Personnaliser des skills de reporting pour Claude, Codex et MCP

Utilisez un skill quand la meme question reporting revient tous les jours. Le skill doit fixer les actions MCP autorisees, les dimensions et metrics exactes, le format de sortie et les garde-fous qui gardent l agent honnete.

Ce qu un skill reporting doit contenir

Un bon skill n est pas un prompt generique. C est un petit contrat d execution pour l agent : fonctions MCP autorisees, champs GAM valides, forme de sortie JSON ou prose, et actions interdites.

Actions autorisees

MCP functions + scope

Contrat champs

Dimensions + metrics

Contrat sortie

JSON, CSV, or summary

Maillage interne

Chaque skill doit renvoyer vers le catalogue des champs et vers la page de cas exacte. Le lecteur obtient un parcours clair, et le SEO comprend mieux le cluster reporting.

Claude Cowork

Skill de rapport GAM quotidien

Pour un brief AdOps du matin qui explique delivery, revenue, problemes de fill et actions sans ouvrir un tableur en premier.

Prompt utilisateur

Claude, lance le rapport GAM d hier par DATE, ADVERTISER_NAME, ORDER_NAME, LINE_ITEM_NAME et AD_UNIT_NAME. Inclue AD_SERVER_IMPRESSIONS, AD_SERVER_CLICKS, AD_SERVER_CTR, AD_SERVER_REVENUE, AD_REQUESTS, FILL_RATE et UNFILLED_IMPRESSIONS. Resume les anomalies et donne le resultId.

Consignes du skill

Actions MCP autorisees : get_report_dimensions, get_report_metrics, run_custom_report, get_report_result, export_report_csv. api=rest par defaut. Utiliser api=soap seulement si la reference champ indique que REST est indisponible. Retourner une synthese humaine, une liste d actions et le resultId en cache.

Fonctions MCP autorisees

get_report_dimensionsget_report_metricsrun_custom_reportget_report_resultexport_report_csv

Sortie representative

  • Hier : 1 284 220 impressions, 4 862 EUR de revenue, CTR 0,42 %, fill rate 91,8 %.
  • Attention : LI-8241 est 18 % sous sa moyenne 7 jours sur AD_UNIT_NAME=Sports/Home.
  • Action : verifier la rotation creative avant midi ; resultId complet rep_20260609_daily.

Garde-fous

  • Ne jamais inventer de champs. Valider les noms incertains avec get_report_dimensions ou get_report_metrics.
  • Utiliser GAM REST pour tout le reporting ici ; les champs Analytics lies sont des colonnes GAM optionnelles seulement si le lien est actif.

Codex

Skill de triage des invendus

Pour classer les ad units ou la demande existe mais ou le fill ou la monetisation fuit.

Prompt utilisateur

Codex, trouve l inventaire invendu des 7 derniers jours par DATE, AD_UNIT_NAME, AD_UNIT_CODE et DEVICE_CATEGORY_NAME. Utilise AD_REQUESTS, AD_SERVER_IMPRESSIONS, UNFILLED_IMPRESSIONS et FILL_RATE. Classe par revenue perdu estime et exporte en CSV si plus de 20 lignes.

Consignes du skill

Utiliser run_custom_report pour le rapport REST complet. fetch_inventory_report est permis seulement comme vue rapide ad-unit inventory, pas comme source de toutes les metrics d invendu. Toujours garder AD_REQUESTS a cote de UNFILLED_IMPRESSIONS pour ne pas confondre perte de trafic et no-fill.

Fonctions MCP autorisees

get_report_metricsrun_custom_reportget_report_resultexport_report_csvfetch_inventory_report

Sortie representative

  • Sports/Homepage | 184 210 ad requests | 52 440 unfilled | fill rate 71,5 % | revenue perdu estime 1 126 EUR.
  • Hypothese racine : probleme de demande ou de sizes, pas perte de trafic.
  • Action : verifier filtres de demande, price floor et tailles bidder avant de changer le trafficking.

Garde-fous

  • Ne pas appeler GA4 ni l API Google Ads pour ce workflow.
  • Ne pas optimiser les price floors sur une seule journee ; comparer hier, 7 jours et meme jour de semaine.

Codex

Skill garde-fou forecast line item

Pour verifier si un line item planifie peut livrer avant que Codex ou un utilisateur ne mute GAM.

Prompt utilisateur

Codex, lance un standalone forecast pour un line item STANDARD planifie : France, ad units Homepage, sizes 300x250 et 728x90, objectif 500000 impressions, priorite 8, frequency cap 3 par jour. Retourne availableUnits, matchedUnits, possibleUnits, riskLevel et la contrainte de ciblage a relacher.

Consignes du skill

Utiliser les fonctions forecast, pas run_custom_report, car la disponibilite future n est pas une metric historique. Ne pas creer, modifier ou reserver le line item. Retourner une decision : safe, review ou unsafe.

Fonctions MCP autorisees

get_standalone_forecastget_delivery_forecast_by_line_itemget_prospective_delivery_forecast

References de champs

Dimensions

lineItemType=STANDARDadUnitIdscreativePlaceholdersgeoTargetingfrequencyCaps

Metrics

availableUnitsmatchedUnitspossibleUnitsriskLevel

Sortie representative

  • Forecast : 612 400 availableUnits pour un objectif 500 000, matchedUnits 544 900, riskLevel=LOW.
  • Contrainte a surveiller : Homepage + France + frequency cap 3/jour reduit possibleUnits de 21 %.
  • Decision : safe pour revue sales, regenerer avant booking.

Garde-fous

  • Le forecast est une estimation de planning, pas une garantie de delivery.
  • Pour un line item existant, utiliser get_delivery_forecast_by_line_item au lieu des inputs standalone.

Codex / LLM JSON

Skill forecast JSON order et key-values

Pour retourner un forecast JSON rejouable qui combine contexte order GAM, IDs custom targeting resolus et chiffres de disponibilite.

Prompt utilisateur

Codex, produis uniquement un JSON forecastDecision pour l order OR-2026-SUMMER : retrouve l order, resous audience=sports et hb_pb=20 en keyId/valueIds, forecaste les ad units Homepage/Sports du 2026-07-01 au 2026-07-31 pour 500000 impressions, sizes 300x250 et 728x90, priorite 8, frequency cap 3 par jour.

Consignes du skill

Actions MCP autorisees : orders list/get, targeting search_custom_targeting/get_custom_targeting_values, reporting get_standalone_forecast/get_delivery_forecast_by_line_item/get_prospective_delivery_forecast. Resoudre les IDs avant le forecast. Retourner uniquement du JSON, sans prose. Le forecast n est pas un rapport REST HISTORICAL.

Fonctions MCP autorisees

list_ordersget_ordersearch_custom_targetingget_custom_targeting_valuesget_standalone_forecastget_delivery_forecast_by_line_itemget_prospective_delivery_forecast

References de champs

Metrics

availableUnitsmatchedUnitsutilizationPercentriskLevel

Sortie representative

  • {"order":{"id":"9482","name":"OR-2026-SUMMER","status":"DRAFT","advertiserId":"7712"},"targeting":{"adUnitIds":["1234567","1234568"],"keyValues":[{"keyId":1871,"valueIds":[9912]},{"keyId":2450,"valueIds":[3301]}]}}
  • {"forecast":{"availableUnits":612400,"matchedUnits":544900,"utilizationPercent":81.6,"contendingLineItems":[{"lineItemId":"90031","priority":6}]}}
  • {"decision":{"riskLevel":"LOW","status":"safe_to_review","relaxFirst":null,"nextAction":"regenerate_before_booking"}}

Garde-fous

  • Ne pas creer, modifier, approuver ou reserver l order depuis cette skill.
  • Ne pas forecaster avec des noms key-value bruts; resoudre les IDs d abord.
  • Garder des cles JSON stables pour que les prompts LLM aval puissent valider les champs requis.

GAM REST / liens actifs

Skill champs lies GAM REST

Pour reporter sur les champs Analytics, AdSense ou Ad Exchange exposes par Google Ad Manager quand le lien ou la source est actif dans GAM.

Prompt utilisateur

Avec GAM REST uniquement, si les champs lies sont disponibles, lance un rapport HISTORICAL des 7 derniers jours par DATE, PAGE_PATH et DEMAND_CHANNEL_NAME. Inclue SESSIONS, GOOGLE_ANALYTICS_REVENUE, ADSENSE_REVENUE, AD_EXCHANGE_REVENUE et AD_EXCHANGE_AVERAGE_ECPM.

Consignes du skill

Actions MCP autorisees : get_report_dimensions, get_report_metrics, run_custom_report, get_report_result. Utiliser api="rest" et report_type="HISTORICAL". Si un champ manque ou est vide, expliquer que la source liee n est peut-etre pas active dans GAM.

Fonctions MCP autorisees

get_report_dimensionsget_report_metricsrun_custom_reportget_report_result

References de champs

Dimensions

DATEPAGE_PATHDEMAND_CHANNEL_NAME

Metrics

SESSIONSGOOGLE_ANALYTICS_REVENUEADSENSE_REVENUEAD_EXCHANGE_REVENUEAD_EXCHANGE_AVERAGE_ECPM

Sortie representative

  • /news/live | Direct | 18 420 sessions | 1 284 EUR revenue Analytics GAM | 942 EUR revenue Ad Exchange | 3,82 EUR eCPM AdX.
  • DEMAND_CHANNEL_NAME=AdSense ajoute 218 EUR sur 62 410 impressions ; AD_EXCHANGE_REVENUE est la source liee la plus forte.
  • Note : ce sont des champs lies GAM REST ; aucun appel GA4 Data API ni Google Ads API.

Garde-fous

  • Ne pas demander de GA4 property ID ni de Google Ads account ID.
  • Ne pas presenter les couts, keywords, bids ou clics natifs indisponibles comme une sortie GAM REST.

Finance / AdOps

Skill billing et export de preuves

Pour les controles finance mensuels qui comparent quantites contractees, impressions livrees, revenue et lignes de preuve CSV.

Prompt utilisateur

Prepare le rapport billing de mai. Inclue uniquement les line items STANDARD et SPONSORSHIP, montre contracted vs delivered impressions, revenue et eCPM, puis exporte le resultat en CSV pour finance.

Consignes du skill

Utiliser generate_billing_report pour les lignes contracted vs delivered. Utiliser get_report_result pour la revue et export_report_csv pour le fichier finance. Si une URL de telechargement existe, utiliser get_report_download_link apres l export.

Fonctions MCP autorisees

generate_billing_reportget_report_resultexport_report_csvget_report_download_link

Sortie representative

  • Billing mai : 42 line items facturables, 38 dans la tolerance, 4 a revoir pour make-good.
  • STANDARD a livre 93,2 % des impressions contractees ; SPONSORSHIP 101,4 %.
  • Export CSV pret : billing_2026_05_standard_sponsorship.csv.

Garde-fous

  • Les rapports billing sont des preuves operationnelles, pas des documents comptables finaux.
  • Toujours conserver order, line item et advertiser names dans l export.