Prérequis
- Mode développeur activé (Mon compte).
- Un jeton d'API créé sur la page Développeur : commence par
readseul. - Node.js 22 ou plus sur la machine qui lance Claude.
- Le fichier du serveur : aitools-mcp.js (téléchargeable depuis Mon compte et la page Développeur). Un seul fichier, aucune dépendance.
Installation
Claude Code
Terminal
claude mcp add aitools \
-e AITOOLS_URL=https://iaboss.fr \
-e AITOOLS_TOKEN=aitk_… \
-- node /chemin/vers/aitools-mcp.jsClaude Desktop
Dans claude_desktop_config.json :
claude_desktop_config.json
{
"mcpServers": {
"aitools": {
"command": "node",
"args": [
"/chemin/vers/aitools-mcp.js"
],
"env": {
"AITOOLS_URL": "https://iaboss.fr",
"AITOOLS_TOKEN": "aitk_…"
}
}
}
}Variables d'environnement
| Variable | Rôle |
|---|---|
AITOOLS_URL requis | Adresse du panel, sans barre finale. |
AITOOLS_TOKEN requis | Jeton d'API aitk_…. |
AITOOLS_READONLY=1 | Ne propose que les outils de lecture, même si le jeton a plus de droits. |
Outils
Chaque outil appelle une route de l'API ; le droit du jeton est celui de la route. Les paramètres marqués * sont obligatoires.
| Outil | Droit | Paramètres | Rôle |
|---|---|---|---|
list_projects | read | — | Liste les projets (avec le nombre de prospects par statut). |
get_project | read | projectId* | Détail d'un projet : fiche, cible, compteurs, envois du jour, conseil de montée en charge, dernières tâches. |
list_prospects | read | projectId* q status minScore sort page | Prospects d'un projet (filtres facultatifs). |
get_prospect | read | prospectId* | Fiche d'un prospect : infos, mails envoyés, notes. |
list_replies | read | unseen intent limit | Réponses reçues des prospects, avec leur intention (interested, question, later, refused, other) et une réponse suggérée. |
list_sent_mails | read | projectId* limit | Mails envoyés d'un projet. |
get_job | read | jobId* | État et résultat d'une tâche (analyse, recherche, audit, envoi…). |
add_prospects | write | projectId* prospects* | Ajoute des prospects à un projet (100 au plus). Doublons, adresses invalides et liste d'opposition sont ignorés. |
set_prospect_status | write | prospectId* status* | Change le statut d'un prospect. « refused » l'ajoute à la liste d'opposition (irréversible côté envoi). |
add_note | write | prospectId* body* | Ajoute une note à un prospect. |
set_next_action | write | prospectId* action day | Définit la prochaine action d'un prospect (action vide : l'efface). |
mark_reply_seen | write | replyId* | Marque une réponse comme lue. |
run_job | jobs | projectId* type* count level confirm | Lance une tâche sur un projet : analyze, prospect (count), evolution (count, level), audit (level), send (count). CONSOMME du quota Claude ; « send » envoie de vrais mails à de vraies personnes : demande toujours une confirmation explicite à l'utilisateur avant, puis passe confirm=true. |
regenerate_hook | jobs | prospectId* | Régénère l'accroche d'un prospect à partir de son site (consomme du quota Claude). |
Exemples de demandes
Une fois branché, parle à Claude normalement :
- « Quelles réponses de prospects n'ai-je pas encore lues ? Résume-les et dis-moi lesquelles sont intéressées. » (
read) - « Ajoute une note à ce prospect : veut un devis avant fin novembre, et programme une relance le 3 novembre. » (
write) - « Lance une recherche de 20 prospects sur le projet Atelier. » (
jobs, consomme du quota Claude)
Sécurité
- Moindre droit. Crée un jeton dédié à Claude avec seulement
read. AvecAITOOLS_READONLY=1, les outils d'écriture n'existent même plus pour Claude. - Envoi de mails. L'outil
run_jobavectype: "send"exigeconfirm: true, et le serveur demande à Claude de recueillir ton accord explicite avant. N'accorde le droitjobsque si tu veux cet usage. - Contenus de tiers. Les réponses des prospects et les pages web sont écrites par d'autres : le serveur les signale à Claude comme des données, jamais comme des instructions. Relis quand même les actions proposées avant de les valider.
- Jeton. Il ne quitte ta machine que pour ton panel, et il est masqué dans les messages d'erreur. Supprime-le depuis la page Développeur s'il a pu fuiter.
Dépannage
| Message | Cause et remède |
|---|---|
Jeton d'API manquant ou invalide (invalid_token) | Jeton recopié incomplètement, ou supprimé. Recrée-le. |
Le mode développeur est désactivé (developer_mode_off) | Réactive-le dans Mon compte : les jetons sont conservés. |
Ce jeton n'a pas le droit « write » (insufficient_scope) | Crée un jeton avec ce droit. |
Trop de requêtes (rate_limited) | 120 requêtes par minute : attends quelques secondes. |
AITOOLS_URL et AITOOLS_TOKEN sont requis | Variables d'environnement absentes dans la configuration de Claude. |
