# Market Report Pdf

> A Claude skill from mounra/ai-marketing.

- **Type:** Skill
- **Install:** `agentstack add skill-mounra-ai-marketing-market-report-pdf`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [mounra](https://agentstack.voostack.com/s/mounra)
- **Installs:** 0
- **Category:** [Content & Media](https://agentstack.voostack.com/c/content-and-media)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [mounra](https://github.com/mounra)
- **Source:** https://github.com/mounra/ai-marketing/tree/main/skills/market-report-pdf

## Install

```sh
agentstack add skill-mounra-ai-marketing-market-report-pdf
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Générateur de Rapport Marketing PDF

## Objectif du Skill
Générer un rapport marketing PDF professionnel et visuellement soigné à l'aide du script Python `scripts/generate_pdf_report.py`. Ce skill collecte toutes les données d'audit et d'analyse disponibles, les structure au format JSON attendu, invoque le script et produit un PDF de marque avec jauges de score, graphiques en barres, tableaux comparatifs, observations et plan d'action priorisé.

**IMPORTANT : Tu dois toujours répondre et rédiger tous tes livrables en français.**

## Quand Utiliser
- L'utilisateur veut un rapport PDF (pas seulement Markdown)
- L'utilisateur prépare un livrable pour une présentation client
- L'utilisateur demande un "rapport soigné", "rapport client" ou "rapport PDF"
- L'utilisateur veut un rapport visuel avec graphiques et scores
- Déclenché par `/market report-pdf` ou `/market report-pdf `

## PDF vs Markdown

| Format | Idéal Pour | Avantages | Inconvénients |
|---|---|---|---|
| **PDF** | Présentations clients, pièces jointes email, supports commerciaux | Apparence professionnelle, mise en forme cohérente, graphiques visuels, imprimable | Plus difficile à modifier, nécessite le script Python |
| **Markdown** | Usage interne, référence rapide, édition itérative, gestion de version | Facile à modifier, lisible dans n'importe quel éditeur, compatible git | Moins soigné visuellement, pas de graphiques |

**Règle générale :** Si le rapport va à un client ou prospect, utiliser le PDF. Pour un usage interne ou une édition ultérieure, utiliser le Markdown.

## Comment Exécuter

### Étape 1 : Collecter Toutes les Données Disponibles
Rassembler les données de toutes les exécutions précédentes de skills. Chercher ces fichiers dans le répertoire projet :

**Sources de données principales :**
- `AUDIT-MARKETING.md` — Résultats globaux de l'audit
- `ANALYSE-LANDING.md` — Analyse de conversion de la page d'atterrissage
- `AUDIT-SEO.md` — Observations SEO
- `VOIX-DE-MARQUE.md` — Analyse de la voix de marque
- `RAPPORT-CONCURRENTS.md` — Données de comparaison concurrentielle
- `ANALYSE-FUNNEL.md` — Analyse du tunnel de vente
- `CALENDRIER-SOCIAL.md` — Audit des réseaux sociaux
- `SEQUENCES-EMAILS.md` — Audit email marketing
- `CAMPAGNES-PUB.md` — Audit publicitaire

**Si aucune donnée préalable n'existe :**
1. Recommander à l'utilisateur d'exécuter d'abord `/market audit ` pour de meilleurs résultats
2. Si l'utilisateur insiste pour générer un rapport sans audits préalables, analyser directement l'URL fournie et construire la structure de données de zéro
3. Utiliser le script analyze_page.py pour collecter des données automatisées : `python scripts/analyze_page.py `

### Étape 2 : Construire la Structure de Données JSON
Le script `scripts/generate_pdf_report.py` attend un fichier JSON en entrée avec cette structure exacte :

```json
{
  "url": "https://exemple.fr",
  "date": "12 mars 2026",
  "brand_name": "Exemple SARL",
  "overall_score": 62,
  "executive_summary": "Un résumé en 2-4 phrases de la santé marketing globale, des principales opportunités et de l'impact CA estimé de la mise en œuvre des recommandations.",
  "categories": {
    "Contenu & Message": {
      "score": 68,
      "weight": "25%"
    },
    "Optimisation de Conversion": {
      "score": 52,
      "weight": "20%"
    },
    "SEO & Visibilité": {
      "score": 74,
      "weight": "20%"
    },
    "Positionnement Concurrentiel": {
      "score": 48,
      "weight": "15%"
    },
    "Marque & Confiance": {
      "score": 70,
      "weight": "10%"
    },
    "Croissance & Stratégie": {
      "score": 55,
      "weight": "10%"
    }
  },
  "findings": [
    {
      "severity": "Critique",
      "finding": "Description de l'observation la plus importante"
    },
    {
      "severity": "Haute",
      "finding": "Description d'une observation de haute priorité"
    },
    {
      "severity": "Moyenne",
      "finding": "Description d'une observation de priorité moyenne"
    },
    {
      "severity": "Basse",
      "finding": "Description d'une observation de moindre priorité"
    }
  ],
  "quick_wins": [
    "Premier élément d'action rapide",
    "Deuxième élément d'action rapide",
    "Troisième élément d'action rapide"
  ],
  "medium_term": [
    "Premier élément d'action moyen terme",
    "Deuxième élément d'action moyen terme",
    "Troisième élément d'action moyen terme"
  ],
  "strategic": [
    "Premier élément d'action stratégique",
    "Deuxième élément d'action stratégique",
    "Troisième élément d'action stratégique"
  ],
  "competitors": [
    {
      "name": "Concurrent A",
      "positioning": "Leur position sur le marché",
      "pricing": "Leur modèle de tarification",
      "social_proof": "Leurs signaux de confiance",
      "content": "Leur approche de contenu"
    },
    {
      "name": "Concurrent B",
      "positioning": "Leur position sur le marché",
      "pricing": "Leur modèle de tarification",
      "social_proof": "Leurs signaux de confiance",
      "content": "Leur approche de contenu"
    }
  ]
}
```

### Étape 3 : Guide d'Assemblage des Données Champ par Champ

#### `url` (chaîne, requis)
L'URL du site cible. Utiliser l'URL complète avec le protocole.

#### `date` (chaîne, requis)
La date de génération du rapport. Format : "JJ mois AAAA" (ex. "12 mars 2026").

#### `brand_name` (chaîne, requis)
Le nom de l'entreprise ou de la marque. Utilisé dans les en-têtes du tableau de comparaison avec les concurrents.

#### `overall_score` (entier, 0-100, requis)
La moyenne pondérée de tous les scores de catégorie. Calculer comme :
```
score_global = (contenu * 0,25) + (conversion * 0,20) + (seo * 0,20) + (concurrentiel * 0,15) + (marque * 0,10) + (croissance * 0,10)
```

#### `executive_summary` (chaîne, requis)
Un résumé en 2-4 phrases couvrant :
- Évaluation actuelle de la santé marketing
- 1-2 observations les plus impactantes
- Impact CA estimé de la mise en œuvre des recommandations
- Première étape recommandée

Rester concis et percutant. Apparaît sur la page de couverture juste en dessous de la jauge de score.

#### `categories` (objet, requis)
Exactement 6 catégories avec leurs scores. Les catégories correspondent à ces domaines d'évaluation :

| Catégorie | Ce qu'elle Mesure | Guide de Score |
|---|---|---|
| Contenu & Message | Qualité du texte, proposition de valeur, clarté des titres, texte CTA, cohérence de la voix de marque | 80+ : Clair, axé bénéfices, spécifique. 60-79 : Adéquat mais générique.  /tmp/report_data.json /dev/null || pip3 install reportlab
```

**Générer le rapport :**
```bash
python3 scripts/generate_pdf_report.py /tmp/report_data.json "RAPPORT-MARKETING-.pdf"
```

Remplacer `` par le nom de domaine du site cible (sans protocole ni www), en utilisant des tirets à la place des points. Par exemple :
- `exemple.fr` devient `RAPPORT-MARKETING-exemple-fr.pdf`
- `monapp.io` devient `RAPPORT-MARKETING-monapp-io.pdf`

**Mode démo (sans arguments) :**
Exécuter le script sans arguments génère un rapport exemple avec des données de démonstration :
```bash
python3 scripts/generate_pdf_report.py
# Crée : MARKETING-REPORT-sample.pdf
```

### Étape 6 : Vérifier la Sortie
Après génération, vérifier que le PDF a bien été créé :
```bash
ls -la "RAPPORT-MARKETING-.pdf"
```

Indiquer le chemin du fichier et sa taille à l'utilisateur.

### Étape 7 : Nettoyage
Supprimer le fichier JSON temporaire :
```bash
rm /tmp/report_data.json
```

## Contenu du Rapport PDF

Le PDF généré comprend les pages suivantes :

### Page 1 : Page de Couverture
- Titre du rapport : "Rapport d'Audit Marketing"
- URL cible
- Date de génération
- Jauge de score global (visualisation circulaire avec code couleur)
- Lettre de note (A+ à F)
- Paragraphe de résumé exécutif

### Page 2 : Tableau de Bord des Scores
- Graphique en barres horizontales montrant les 6 scores de catégorie avec code couleur
- Tableau des scores avec noms de catégorie, scores, poids et labels de statut
- Code couleur : Vert (80+), Bleu (60-79), Jaune (40-59), Rouge (` — Génère des données d'audit complètes
2. Exécuter `/market competitors ` — Ajoute des données de comparaison concurrentielle
3. Exécuter `/market seo ` — Ajoute des observations SEO détaillées
4. Exécuter `/market landing ` — Ajoute l'analyse CRO
5. Exécuter `/market report-pdf ` — Compile tout dans un PDF

Le skill de rapport PDF cherchera automatiquement les fichiers de sortie de ces skills et intégrera leurs données dans le JSON du rapport.

## Sortie
- **Fichier :** `RAPPORT-MARKETING-.pdf`
- **Emplacement :** Répertoire racine du projet
- **Taille :** Typiquement 200Ko-500Ko selon le volume de contenu
- **Pages :** 5-7 pages selon si des données concurrentielles et des sections supplémentaires sont incluses

## Principes Clés
- Le rapport PDF est le livrable le plus orienté client de la boîte à outils. La qualité compte.
- Toujours vérifier que les données JSON sont complètes et précises avant de générer. Mauvaises données = mauvais rapport.
- Utiliser le PDF pour les premières impressions clients et les conversations commerciales. Faire un suivi avec le rapport Markdown plus détaillé si le client s'engage.
- Chaque score doit être justifiable. Si un client demande "pourquoi j'ai eu 52 en Optimisation de Conversion ?", les observations doivent fournir des preuves claires.
- Arrondir les scores à des nombres entiers. Les décimales suggèrent une fausse précision.
- Garder le résumé exécutif concis — 2-4 phrases maximum. Les clients survolent les pages de couverture.
- Si le rapport est généré pour un prospect (pas encore client), le rapport sert d'outil commercial. Rendre les opportunités convaincantes et le plan d'action réalisable.

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [mounra](https://github.com/mounra)
- **Source:** [mounra/ai-marketing](https://github.com/mounra/ai-marketing)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-mounra-ai-marketing-market-report-pdf
- Seller: https://agentstack.voostack.com/s/mounra
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
