# Sécurité et confirmations

> Ce que l'assistant peut faire dans CiteMe, comment les outils qui consomment des crédits et les outils destructifs sont protégés, et ce que le serveur MCP ne fait jamais.

Sécurité

Le serveur MCP donne à votre assistant le même accès que vous dans CiteMe, limité par votre rôle et votre forfait, et rien de plus. Chaque outil appartient à l'une de ces familles :

| Famille | Effet | Exemples |
|---------|-------|----------|
| **Lecture** | Ne modifie rien | `get_latest_audit`, `list_citations`, `get_usage` |
| **Écriture** | Modifie vos données CiteMe | `create_topic`, `move_prompts`, `set_suggestion_status` |
| **Consomme** | Lance un traitement qui consomme des crédits ou un quota, après un aperçu | `run_audit`, `run_prompt_tracking`, `import_prompts` |
| **Destructif** | Supprime des données | `delete_topic`, `remove_prompts` |

Chaque outil déclare sa famille à votre client, ce qui lui permet de vous demander votre accord avant d'appeler un outil qui modifie quelque chose. Gardez cette confirmation activée.

---

## Les outils de lecture

Ils consultent vos données et ne changent rien, ni dans CiteMe ni ailleurs. Un siège Lecteur n'a accès qu'à ceux-là.

---

## Les outils qui consomment des crédits

Cinq outils lancent des appels aux moteurs IA ou à des services de recherche, ou utilisent un quota de votre forfait. Ils fonctionnent tous en deux temps :

1. **L'aperçu.** Appelé avec `confirm: false`, l'outil ne lance rien. Il répond avec ce qui serait exécuté, le nombre d'appels prévus, le quota utilisé et ce qu'il vous en reste. Il fait les mêmes vérifications qu'un vrai lancement, donc un refus (quota épuisé, projet pas prêt, forfait insuffisant) apparaît dès l'aperçu.
2. **Le lancement.** L'outil ne lance le traitement qu'avec `confirm: true`.

L'assistant doit vous montrer l'aperçu et attendre votre accord avant de confirmer. Vous pouvez le lui demander explicitement : « montre-moi d'abord ce que ça va consommer ».

| Outil | Ce qu'il utilise |
|-------|------------------|
| `run_audit` | Un audit manuel de la semaine par moteur choisi. Forfaits Pro et Expert. |
| `run_prompt_tracking` | Un des suivis manuels du mois, pour un moteur. Les suivis planifiés ne sont pas touchés. |
| `import_prompts` | Une place du quota de prompts par prompt ajouté. L'aperçu classe chaque ligne : nouvelle, doublon, invalide ou hors quota. |
| `run_prompt_discovery` | Une des découvertes de prompts du mois. |
| `run_social_analysis` | Aucun quota mensuel, mais une seule analyse à la fois, puis une heure d'attente avant la suivante. Forfaits Pro et Expert. |

Ces outils utilisent les mêmes quotas que le dashboard : un audit lancé depuis votre assistant compte comme un audit lancé depuis CiteMe.

Un seul traitement de chaque sorte tourne à la fois sur un projet. Si un audit lancé dans l'heure est encore en cours, `run_audit` renvoie cet audit au lieu d'en démarrer un second, et il en va de même pour un suivi ou une découverte en cours. Une nouvelle analyse sociale est refusée tant que la précédente tourne.

---

## Les outils destructifs

Deux outils suppriment des données. Ils sont déclarés comme destructifs, pour que votre client vous demande confirmation avant chaque appel.

- **`delete_topic`** supprime un sujet. Ses prompts ne sont pas supprimés : ils gardent leur statut et leur marché, et se retrouvent sans sujet. Les réponses des audits passés perdent leur rattachement à ce sujet.
- **`remove_prompts`** retire jusqu'à 100 prompts. Un prompt écrit à la main, ou inactif, est supprimé définitivement : ses anciens résultats de suivi sont conservés mais ne lui sont plus rattachés. Un prompt actif trouvé par CiteMe (découverte, Search Console, visites IA) est seulement écarté, pour ne pas vous être reproposé. Le retirer une seconde fois le supprime.

Pour mettre des prompts de côté sans rien perdre, préférez `archive_prompts` : ils sortent des audits et du quota, et `activate_prompts` les fait revenir.

---

## Les autres écritures

Elles agissent uniquement sur vos données CiteMe.

- Quand un outil reçoit une liste d'identifiants de prompts ou de suggestions, chacun doit appartenir au projet. Sinon, rien n'est modifié.
- `set_suggestion_status` change seulement le statut d'une suggestion, en Approuvée ou Rejetée. Il ne publie, n'applique et ne modifie jamais son contenu. Il refuse d'approuver une suggestion qui porte une date de publication programmée, puisque CiteMe la publierait à cette date.
- `record_change_event` enregistre seulement qu'une page a changé à une date donnée. Il ne touche pas à la page et ne lance pas d'audit.

---

## Ce que le serveur MCP ne fait jamais

Le serveur hébergé n'a aucun outil pour :

- publier du contenu, appliquer une suggestion sur votre site, lancer ou valider un workflow Actions, ni déployer quoi que ce soit sur votre site ;
- toucher à la facturation : abonnement, crédits, options, moyens de paiement ;
- lire ou modifier des identifiants : clés API, secrets, connexions CMS, CRM, Stripe, Cloudflare ou Google ;
- gérer l'équipe : invitations, rôles, retrait de membres ;
- supprimer ou archiver un projet ou un marché, supprimer le compte ou transférer l'organisation ;
- accéder aux données personnelles des visiteurs identifiés ou lancer un export RGPD.

Ces actions restent dans le dashboard, où vous les faites vous-même.

:::caution Paquet local
Le [paquet local](./connect.md#paquet-local) ajoute l'outil `run_workflow`, qui lance un de vos workflows Actions tel que vous l'avez configuré, y compris une publication sur votre CMS si le workflow en contient une. Cet outil n'existe pas sur le serveur hébergé.
:::

---

## Ce que CiteMe voit

CiteMe reçoit les appels d'outils de votre assistant et leurs paramètres, pas vos conversations. Pour chaque appel, CiteMe enregistre l'outil, le projet, la durée et l'éventuelle erreur, pour le support et le suivi de l'usage.

---

## Bonnes pratiques

- Gardez activée, dans votre client, la confirmation avant tout outil qui n'est pas en lecture.
- Donnez le rôle Lecteur aux personnes qui n'ont besoin que de consulter.
- Les outils renvoient des contenus venus du web : réponses des moteurs, pages citées, suggestions. Si l'assistant propose une action inattendue juste après avoir lu ces contenus, refusez-la et vérifiez dans le dashboard.

---

**[Référence des outils →](./tools.md)**
