SSD Nodes Learn
Guides Matt ConnorPar Matt Connor · Mis à jour le 2026-07-19

Claude + n8n : workflows IA sur un VPS

Connectez Claude à n8n sur votre propre VPS : identifiants, choix du modèle par nœud, trois workflows IA concrets, calcul des coûts et erreurs courantes.

Ce que vous allez construire

Trois workflows IA fonctionnels sur l'instance n8n que vous faites déjà tourner : un webhook qui résume tout ce que vous lui envoyez, un lecteur de flux planifié qui transforme des articles en lignes de tableur structurées, et un AI Agent qui appelle une API HTTP de lui-même pour répondre à des questions. C'est l'équivalent no-code d'appeler l'API Claude depuis Python sur votre VPS : même API, mêmes tokens, même facture, mais l'orchestration vit dans des nœuds n8n plutôt que dans un script.

Je pars du principe que n8n tourne déjà derrière HTTPS, comme dans le guide n8n auto-hébergé sur Docker. Si ce n'est pas le cas, faites-le d'abord : les webhooks ont besoin d'un vrai point de terminaison TLS, et le magasin d'identifiants dans lequel vous allez placer une clé d'API a besoin de la sauvegarde de clé de chiffrement que ce guide vous rappelle sans cesse.

Les vrais problèmes ici ne relèvent pas du glisser-déposer. Ce sont le choix du modèle par nœud, les champs de prompt qui interpolent silencieusement undefined, et le fait qu'une automatisation tourne sans surveillance : un workflow qui coûte un demi-centime par exécution reste bon marché jusqu'à ce qu'une boucle de réessai le lance quatre mille fois dans la nuit. La majeure partie de ce guide porte sur ces points.

Un seul identifiant, chiffré avec la clé que vous avez sauvegardée

Obtenez une clé d'API depuis la console Anthropic sur platform.claude.com : Settings, puis API Keys, puis créez une clé nommée par exemple n8n-vps. Elle n'est affichée qu'une seule fois. Approvisionnez le compte ou configurez la facturation ; l'usage de l'API se paie au token et est entièrement distinct de tout abonnement Claude.ai.

Dans n8n : Credentials, Create credential, choisissez Anthropic, collez la clé dans le champ API Key, enregistrez. Chaque nœud Claude de chaque workflow référence ce seul identifiant stocké : vous ne collez jamais la clé dans un nœud.

Deux remarques opérationnelles. D'abord, n8n chiffre les identifiants stockés avec N8N_ENCRYPTION_KEY. Si vous définissez explicitement cette variable d'environnement dans votre fichier compose comme dans le guide n8n, votre identifiant survit aux reconstructions du conteneur ; si vous laissez n8n en générer une puis que vous perdez le volume, chaque identifiant stocké — cette clé comprise — devient un texte chiffré irrécupérable. Sauvegardez la clé maintenant si vous l'avez négligé. Ensuite, considérez le magasin d'identifiants n8n comme le rayon d'impact : quiconque peut modifier des workflows sur votre instance peut faire des requêtes avec votre clé Anthropic. Fixez une limite de dépense dans la console sous Settings pour qu'une instance compromise ou emballée ait un plafond.

Le choix du modèle est une décision par nœud

La liste déroulante des modèles dans les nœuds Claude de n8n est tirée en direct de l'API, donc elle affiche ce à quoi votre clé a accès. En juillet 2026, la gamme et les tarifs de l'API par million de tokens en entrée/sortie sont : Claude Haiku 4.5 (claude-haiku-4-5) à 1 $/5 $ avec une fenêtre de contexte de 200K, Claude Sonnet 5 (claude-sonnet-5) à 3 $/15 $ — tarif de lancement à 2 $/10 $ jusqu'au 31 août 2026 — et Claude Opus 4.8 (claude-opus-4-8) à 5 $/25 $, tous deux avec des fenêtres de contexte de 1M de tokens. Il y a aussi Claude Fable 5 (claude-fable-5) à 10 $/50 $ pour le travail de raisonnement le plus difficile ; rien dans ce guide n'en a besoin. Utilisez ces identifiants exacts : une variante suffixée d'une date dont vous vous souvenez d'un vieux tutoriel renverra une erreur 404, et les prix évoluent, donc vérifiez sur platform.claude.com avant de faire confiance à un chiffre lu où que ce soit, y compris ici.

L'habitude à prendre : choisissez le modèle par nœud, pas par plateforme. Classification, extraction, résumé, routage — le pain quotidien de l'automatisation — tournent parfaitement sur Haiku à un tiers du prix catalogue de Sonnet et à un cinquième de celui d'Opus. Réservez Sonnet aux agents et au raisonnement en plusieurs étapes, Opus au rare workflow où une mauvaise réponse coûte plus cher que les tokens. Un workflow avec cinq nœuds Claude peut et devrait mélanger les modèles.

Les deux nœuds Claude, et lequel utiliser où

n8n fournit deux intégrations Anthropic distinctes, et choisir la mauvaise est le détour le plus courant chez les débutants.

Le nœud Anthropic est un nœud d'application classique : une requête entre, une réponse sort. Sa ressource Text a une opération Message a Model, ainsi que des opérations pour analyser des images et des documents. Utilisez-le chaque fois que la logique du workflow vit dans n8n : déclencheur, appel Claude, nœud suivant. Les workflows 1 et 2 ci-dessous l'utilisent, ou son équivalent en chaîne.

Le nœud Anthropic Chat Model est un sous-nœud — une petite pièce attachée qui fournit le modèle à un nœud racine comme AI Agent ou Basic LLM Chain. Il n'a ni déclencheur ni sortie propre ; il expose le sélecteur de modèle plus des options d'échantillonnage comme Maximum Number of Tokens et Sampling Temperature. Une mise en garde de la documentation n8n vaut la peine d'être mémorisée : les expressions à l'intérieur des sous-nœuds se résolvent toujours par rapport au premier élément d'entrée, et non à chaque élément — placez les expressions par élément dans les champs de prompt du nœud racine, pas dans le sous-nœud.

Workflow 1 : webhook en entrée, résumé en sortie

Le hello-world de l'automatisation IA : tout ce qui est envoyé en POST vers une URL est résumé et atterrit dans Slack ou votre boîte mail.

  1. Nœud Webhook — HTTP Method POST, chemin summarize. n8n vous donne une URL de test et une URL de production ; celle de production n'écoute qu'une fois le workflow activé.
  2. Nœud Anthropic — Message a Model, modèle claude-haiku-4-5, Max Tokens autour de 300.
  3. Nœud Slack (ou Send Email) — publiez le texte de la réponse dans un canal.

Le prompt est l'endroit où les expressions n8n rencontrent Claude. Un corps de POST atterrit sous $json.body, donc le champ du message utilisateur ressemble à :

Summarize the following feedback in three bullets, then one line:
verdict: praise | complaint | churn-risk. No preamble.

{{ $json.body.text }}

Placez les instructions de rôle et de format dans le champ system prompt du nœud, pas dans le message utilisateur — le system prompt reste constant tandis que la charge utile varie, ce qui garde le comportement stable et rend le prompt lisible dans six mois. Testez-le depuis le VPS lui-même :

curl -X POST https://n8n.example.com/webhook/summarize \
  -H 'Content-Type: application/json' \
  -d '{"text": "Third support ticket this month about slow disk IO..."}'

Coût par exécution sur Haiku : une charge utile de 1 200 tokens plus le prompt fait environ 0,0012 $ en entrée, 300 tokens en sortie font 0,0015 $ — soit environ un quart de centime. Mille exécutions par mois font moins de 3 $. Le même nœud pointé vers Opus 4.8 coûte environ cinq fois plus. Ce ratio, multiplié par chaque workflow que vous construisez, explique pourquoi l'habitude du modèle par nœud compte.

Workflow 2 : RSS planifié vers lignes structurées

Maintenant quelque chose de cadencé, avec une sortie structurée : lire un flux RSS toutes les heures, classer chaque élément, ajouter des lignes à une feuille.

  1. Schedule Trigger — toutes les heures.
  2. RSS Read — l'URL du flux. Produit un élément par article.
  3. Basic LLM Chain — avec un sous-nœud Anthropic Chat Model réglé sur claude-haiku-4-5, et un sous-nœud Structured Output Parser contenant un schéma JSON.
  4. Google Sheets (ou Postgres) — ajoutez une ligne par élément.

Le Structured Output Parser est ce qui transforme « Claude, renvoie du JSON s'il te plaît » d'un espoir en un contrat : il valide la réponse du modèle par rapport à votre schéma et fait échouer l'élément bruyamment au lieu d'écrire des lignes inexploitables. Un schéma comme :

{
  "type": "object",
  "properties": {
    "category": { "type": "string", "enum": ["release", "security", "tutorial", "other"] },
    "relevance": { "type": "number" },
    "one_line_summary": { "type": "string" }
  },
  "required": ["category", "relevance", "one_line_summary"]
}

Et le prompt de la chaîne référence l'élément du flux :

Classify this article for a VPS hosting audience.

Title: {{ $json.title }}
Content: {{ $json.contentSnippet }}

Le calcul du coût change de forme ici : c'est par élément, pas par exécution. Cinquante articles par heure, vingt-quatre heures par jour, cela fait 36 000 appels Claude par mois — sur Haiku peut-être 40 à 90 $ selon la longueur des articles, sur Opus environ cinq fois plus. Dédupliquez avant le nœud LLM (un simple IF contre les liens déjà vus, ou le nœud Remove Duplicates de n8n) et le nombre s'effondre, car la plupart des relevés horaires ne contiennent rien de nouveau. Le token le moins cher est l'appel que vous ne faites jamais.

Workflow 3 : un AI Agent qui utilise des outils

Les deux premiers workflows sont des pipelines — vous décidez des étapes. Un nœud AI Agent inverse cela : vous donnez à Claude un objectif et des outils, et c'est lui qui décide quels outils appeler, dans quel ordre, jusqu'à ce qu'il ait terminé. n8n exige un sous-nœud de modèle de chat et au moins un sous-nœud d'outil attaché.

Un montage concret — un assistant ops qui répond à « qu'est-ce qui est en panne et pourquoi » à partir de votre supervision :

  1. Chat Trigger (ou webhook) — la question arrive.
  2. AI Agent — avec un sous-nœud Anthropic Chat Model réglé sur claude-sonnet-5. Les agents planifient et enchaînent les appels d'outils ; Haiku peut piloter des agents simples à un seul outil, mais Sonnet est le plancher raisonnable dès que les outils se multiplient.
  3. Nœud HTTP Request attaché en tant qu'outil — pointé vers votre API de statut Uptime Kuma ou votre point de terminaison Zabbix. Un second outil HTTP peut atteindre n'importe quoi d'autre disposant d'une API REST.

Deux réglages font l'essentiel du travail. Le System Message de l'agent définit la tâche : « You are an ops assistant. Use the status tool to check current monitor state before answering. Report only monitors that are down, with duration. » Et la description de chaque outil n'est pas une documentation pour les humains — c'est ainsi que Claude décide quand l'appeler. « Returns current up/down state for all monitored services as JSON » est appelé aux bons moments ; « status API » est ignoré ou mal utilisé. Quand vous attachez le nœud HTTP Request en tant qu'outil, activez son option Optimize Response et sélectionnez les champs JSON qui comptent — sinon chaque réponse d'API verbeuse est déversée dans le contexte du modèle sous forme de tokens en entrée que vous payez.

Réglez Max Iterations sur l'agent (la valeur par défaut est 10) au plus petit nombre qui fonctionne — c'est la différence entre « l'agent a abandonné après 4 appels d'outils » et une boucle d'une douzaine d'allers-retours avec le modèle. Et comprenez la forme de la facturation : chaque itération renvoie toute la conversation jusqu'ici — system message, question, chaque résultat d'outil précédent — sous forme de tokens en entrée. Une exécution d'agent à six itérations peut facilement totaliser 20 000 tokens cumulés en entrée et 2 000 en sortie : sur le tarif de lancement de Sonnet 5 environ 0,06 $, à peu près 0,09 $ au tarif standard de 3 $/15 $ — soit vingt fois une simple exécution de résumé. Si vous vous retrouvez à greffer de nombreux outils sur un seul agent, c'est le moment où faire tourner des serveurs MCP sur votre VPS devient l'architecture la plus propre.

Garde-fous de coût, parce que personne ne surveille

Un workflow sans surveillance a besoin des contrôles qu'un humain au clavier fournit implicitement. Quatre couches, de la moins chère à la plus chère.

Max Tokens sur chaque nœud Claude. C'est un plafond dur en sortie. Un résumeur a besoin de 300, un classifieur de 100. Cela borne le côté coûteux de la balance (5 à 25 $ par million de tokens en sortie contre 1 à 5 $ en entrée) et fait office de frein d'emballement : un bug de prompt qui fait divaguer Claude coûte 300 tokens, pas 8 000.

Le modèle par nœud. Traité plus haut ; c'est un levier de prix de cinq à dix fois sur la gamme actuelle et cela prend dix secondes à régler.

Bornez les boucles. Max Iterations sur les agents. Un délai d'expiration de workflow dans les réglages du workflow pour qu'une exécution bloquée meure au lieu de tourner en rond. Et faites attention au Retry On Fail par nœud : c'est le bon outil pour les erreurs transitoires, mais les réessais multiplient le coût — un Max Tries de 3 avec un Wait Between Tries de 5000 ms signifie qu'un échec persistant vous facture jusqu'à trois fois par élément avant d'abandonner. N'enveloppez jamais un réessai autour d'un nœud qui a déjà réussi de façon coûteuse.

Un workflow d'erreur comme filet de sécurité. Créez un workflow commençant par le nœud Error Trigger qui publie le nom du workflow en échec et l'erreur dans Slack, puis définissez-le comme Error Workflow dans les réglages de chaque workflow IA. Le mode de défaillance que cela attrape est le plus vilain : un workflow déclenché par planification qui échoue à chaque exécution, chaque heure, pendant une semaine — chaque exécution brûlant des tokens avant de mourir. Associez-le à une limite de dépense mensuelle dans la console Anthropic et consultez la page d'usage de la console les premiers jours après avoir activé quoi que ce soit de planifié. Si vous voulez comprendre exactement ce qui vous est facturé, le guide sur l'utilisation des tokens le décortique.

Modes de défaillance, avec les chaînes que vous verrez

Le nœud échoue instantanément avec « Authorization failed - please check your credentials. » L'API a renvoyé un 401. Le corps sous-jacent est :

{"type": "error", "error": {"type": "authentication_error", "message": "invalid x-api-key"}}

Une clé mal collée — tronquée, avec un espace de fin, ou l'espace réservé d'un tutoriel. Recréez l'identifiant n8n et collez à nouveau ; si cela marchait hier, vérifiez si la clé a été révoquée dans la console ou si une restauration de volume est revenue à un identifiant chiffré avec une N8N_ENCRYPTION_KEY différente.

Les exécutions échouent par rafales avec un 429 rate_limit_error, un message du genre « Number of request tokens has exceeded your per-minute rate limit. » Les limites de débit sont des seaux par minute, et n8n rend très facile le déclenchement de cinquante exécutions de webhook ou RSS simultanément. Corrigez-le structurellement : traitez les éléments en séquence (Loop Over Items) plutôt qu'en parallèle, et réglez Retry On Fail avec Max Tries à 3 et Wait Between Tries à son maximum de 5000 ms — n8n plafonne ce champ à 5000 ms. Quand vous avez besoin d'un délai plus long pour que les réessais tombent dans la fenêtre de la minute suivante, placez un nœud Wait dans le chemin d'erreur ou traitez les éléments un à la fois. La réponse porte un en-tête retry-after qui vous dit exactement combien de temps attendre — l'attente fixe de n8n ne peut pas le lire, donc construisez vous-même la pause plus longue.

Un 404 not_found_error nommant votre modèle. Le corps renvoie la faute de frappe :

{"type": "error", "error": {"type": "not_found_error", "message": "model: claude-haiku-4.5"}}

Des points au lieu de traits d'union (4.5 pour 4-5), un suffixe de date issu d'un article de blog périmé, ou un modèle retiré. Corrigez l'identifiant par rapport à la liste actuelle — cela mord ceux qui tapent dans le champ de modèle sous forme d'expression au lieu de choisir dans la liste déroulante.

Claude répond à une question que vous n'avez pas posée. Aucune erreur nulle part — l'exécution est verte. Une expression n8n qui référence un champ manquant, comme {{ $json.body.text }} alors que la charge utile utilisait message, interpole la chaîne littérale undefined dans votre prompt, et Claude répond de bon cœur à un prompt qui ne porte sur rien. Si le nœud référencé ne s'est pas exécuté du tout, vous obtenez « Referenced node is unavailable », mais un champ manquant est silencieux. Avant d'activer, exécutez toujours une fois avec de vraies données et lisez le prompt réellement rendu dans le panneau d'entrée du nœud — l'éditeur d'expressions prévisualise la valeur résolue, et undefined est là, sous vos yeux, si vous regardez.

FAQ

Comment connecter Claude à n8n ?

Créez une clé d'API dans la console Anthropic sur platform.claude.com, puis dans n8n ajoutez un identifiant de type Anthropic et collez-la dans le champ API Key. Chaque nœud Claude — le nœud d'application Anthropic et le sous-nœud Anthropic Chat Model — référence cet identifiant stocké. n8n le chiffre avec N8N_ENCRYPTION_KEY, donc sauvegardez cette clé sous peine de perdre vos identifiants avec le volume.

Combien coûte un workflow IA par exécution ?

Estimez les tokens par exécution, puis multipliez par les prix au million du modèle — en juillet 2026, Haiku 4.5 est à 1 $/5 $ par million de tokens en entrée/sortie et Sonnet 5 à 3 $/15 $ (2 $/10 $ en tarif de lancement jusqu'en août 2026). Un résumé par webhook sur Haiku revient à environ un quart de centime ; une exécution d'agent sur Sonnet avec plusieurs appels d'outils se situe plus près de 0,06 à 0,10 $ parce que chaque itération renvoie toute la conversation en entrée. Vérifiez l'exécution sur la page d'usage de la console plutôt que de faire confiance aux estimations.

Quel modèle Claude utiliser pour les automatisations n8n ?

Haiku 4.5 pour la classification, l'extraction, le résumé et le routage — le travail à fort volume où la vitesse et le prix dominent. Sonnet 5 pour les nœuds AI Agent et le raisonnement en plusieurs étapes. Opus 4.8 uniquement là où une mauvaise réponse est assez coûteuse pour justifier son prix catalogue de 5 $/25 $ — cinq fois Haiku, un peu moins du double de Sonnet. Réglez le modèle par nœud, pas par workflow — un même workflow peut mélanger les trois.

Comment empêcher un workflow n8n de trop dépenser sur l'API Claude ?

Superposez les garde-fous : un Max Tokens bas sur chaque nœud Claude, Max Iterations sur les agents, un délai d'expiration de workflow, et des réglages Retry On Fail prudents pour que les échecs ne multiplient pas la dépense en tokens. Ajoutez ensuite un workflow Error Trigger qui vous alerte dans Slack quand un workflow IA échoue, et fixez une limite de dépense mensuelle dans la console Anthropic comme plafond dur que rien sur le VPS ne peut outrepasser.

Les appels d'outils de l'AI Agent coûtent-ils un supplément ?

Il n'y a pas de frais d'outil séparés, mais les outils ne sont pas gratuits : chaque résultat d'outil est renvoyé au modèle sous forme de tokens en entrée, et chaque itération de l'agent renvoie toute la conversation jusqu'ici. Une réponse d'API bavarde transmise sans filtre peut éclipser votre prompt réel — activez Optimize Response sur les outils HTTP Request et ne renvoyez que les champs dont l'agent a besoin.