SSD Nodes Learn Hosting plans →
Руководства Matt ConnorАвтор: Matt Connor · Обновлено 2026-08-28

Интеграция Claude и n8n на собственном VPS

Настройте Claude в n8n на своем VPS. В руководстве описаны параметры подключения, выбор моделей, создание трех рабочих процессов и расчет стоимости API для автоматизаций.

Что вы создаете

Три рабочих AI-процесса (workflow) на уже запущенном экземпляре n8n: вебхук, который суммирует любой переданный ему текст; планировщик для чтения лент, преобразующий статьи в структурированные строки таблицы; и AI-агент, который самостоятельно обращается к HTTP API для ответов на вопросы. Это no-code аналог вызова Claude API из Python на вашем VPS: тот же API, те же токены, тот же счет, но оркестрация выполняется в узлах n8n, а не в скрипте.

Я исхожу из того, что n8n уже запущен за HTTPS согласно руководству по self-hosted n8n на Docker. Если это не так, выполните настройку сначала: вебхукам требуется реальная TLS-конечная точка, а хранилище учетных данных, куда вы собираетесь поместить API-ключ, требует резервной копии ключа шифрования, о которой напоминает это руководство.

Интересные проблемы здесь связаны не с перетаскиванием элементов (drag-and-drop). Они касаются выбора модели для каждого узла, полей промптов, которые автоматически подставляют undefined, и того факта, что автоматизация работает без присмотра. Процесс, который стоит полцента за запуск, дешев, пока цикл повторных попыток не выполнит его четыре тысячи раз за ночь. Большая часть этого руководства посвящена именно таким вопросам.

Один ключ доступа, зашифрованный с помощью резервной копии ключа

Получите API key в консоли Anthropic на странице platform.claude.com, перейдя в раздел Settings, затем API Keys, и создайте ключ с названием вроде n8n-vps. Он отображается только один раз. Пополните баланс или настройте биллинг; использование API оплачивается за каждый токен и никак не связано с подпиской Claude.ai. Если вы планировали реализовать эти три рабочих процесса бесплатно, то бесплатного уровня не существует, есть только небольшой приветственный кредит и несколько бесплатных эндпоинтов.

В n8n: перейдите в Credentials, нажмите Create credential, выберите Anthropic, вставьте ключ в поле API Key и сохраните. Каждый узел Claude в любом рабочем процессе ссылается на эти сохраненные учетные данные; вам не нужно вставлять ключ в каждый узел отдельно.

Два практических замечания. Во-первых, n8n шифрует сохранённые учётные данные с помощью N8N_ENCRYPTION_KEY. Если явно задать эту переменную окружения в файле compose согласно руководству n8n, учётные данные сохранятся после пересборки контейнеров. Если позволить n8n сгенерировать ключ, а затем потерять том, все сохранённые учётные данные, включая этот ключ, превратятся в невосстановимый шифротекст. Если вы пропустили этот шаг, создайте резервную копию ключа сейчас.

Во-вторых, считайте хранилище учётных данных n8n границей потенциального ущерба: любой пользователь, который может редактировать рабочие процессы в вашем экземпляре, сможет выполнять запросы с использованием вашего ключа Anthropic. В Community edition нет разрешений на учётные данные для отдельных пользователей. Поэтому, если к этому экземпляру будут подключаться другие пользователи, ознакомьтесь с материалом о средствах контроля доступа, доступных в платной лицензии n8n, прежде чем выдавать им учётные записи. Установите лимит расходов в Console в разделе Settings. Тогда скомпрометированный или некорректно работающий экземпляр не сможет превысить заданный предел.

Выбор модели осуществляется для каждого узла отдельно

Выпадающий список моделей в узлах Claude в n8n заполняется динамически через API, поэтому он отображает только те модели, к которым есть доступ с вашим ключом. По состоянию на июль 2026 года линейка моделей и стоимость API за миллион входных/выходных токенов составляют: Claude Haiku 4.5 (claude-haiku-4-5) — $1/$5 с контекстным окном 200K, Claude Sonnet 5 (claude-sonnet-5) — $3/$15 (вводная цена $2/$10 действует до 31 августа 2026 года) и Claude Opus 4.8 (claude-opus-4-8) — $5/$25, обе с контекстным окном 1M токенов. Также доступна модель Claude Fable 5 (claude-fable-5) по цене $10/$50 для наиболее сложных задач логического вывода; в данном руководстве она не требуется. Используйте именно эти идентификаторы: варианты с суффиксами дат из старых руководств вернут ошибку 404. Цены меняются, поэтому проверяйте platform.claude.com перед тем, как доверять любым цифрам, включая приведенные здесь.

Рекомендуемая практика: выбирайте модель для каждого узла, а не для всей платформы целиком. Классификация, извлечение данных, суммаризация и маршрутизация — основные задачи автоматизации — отлично работают на Haiku, которая стоит в три раза дешевле Sonnet и в пять раз дешевле Opus. Оставьте Sonnet для агентов и многошаговых логических цепочек, а Opus — для редких сценариев, где стоимость неверного ответа превышает стоимость токенов. Рабочий процесс, состоящий из пяти узлов Claude, может и должен сочетать разные модели.

Два узла Claude: какой и где использовать

n8n поставляется с двумя различными интеграциями Anthropic, и выбор неподходящей из них — самая частая ошибка новичков.

Узел Anthropic — это обычный узел приложения: один запрос на входе, один ответ на выходе. Его ресурс Text содержит операцию Message a Model, а также операции для анализа изображений и документов. Используйте его всегда, когда логика рабочего процесса находится внутри n8n: триггер, вызов Claude, следующий узел. Рабочие процессы 1 и 2, описанные ниже, используют его или его аналог для цепочек.

Узел Anthropic Chat Model — это вспомогательный узел (sub-node), небольшое дополнение, которое предоставляет модель для корневого узла, такого как AI Agent или Basic LLM Chain. У него нет собственного триггера и выхода; он предоставляет выбор модели и параметры выборки, такие как Maximum Number of Tokens и Sampling Temperature. Важное примечание из документации n8n, которое стоит запомнить: выражения внутри вспомогательных узлов всегда вычисляются относительно первого входного элемента, а не каждого элемента по отдельности. Размещайте выражения, зависящие от каждого элемента, в полях промпта корневого узла, а не во вспомогательном узле.

Рабочий процесс 1: получение вебхука, отправка сводки

Базовый пример автоматизации с ИИ: любой POST-запрос на URL обрабатывается, превращается в краткое содержание и отправляется в Slack или на электронную почту.

  1. Узел Webhook, метод HTTP POST, путь summarize. n8n предоставляет тестовый и рабочий URL; рабочий URL начинает прослушивание только после активации рабочего процесса.
  2. Узел Anthropic, действие Message a Model, модель claude-haiku-4-5, параметр Max Tokens около 300.
  3. Узел Slack (или Send Email), отправка текста ответа в канал.

В этом узле выражения n8n взаимодействуют с Claude. Тело POST-запроса попадает в $json.body, поэтому поле сообщения пользователя выглядит так:

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

{{ $json.body.text }}

Инструкции по роли и формату следует размещать в поле системного промпта узла, а не в сообщении пользователя. Системный промпт остается неизменным, в то время как полезная нагрузка меняется; это обеспечивает стабильность поведения и позволяет легко прочитать промпт даже спустя полгода. Протестируйте его прямо с VPS:

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..."}'

Стоимость одного запуска на модели Haiku: полезная нагрузка в 1200 токенов плюс промпт — это около $0.0012 на вход, 300 токенов на выходе — $0.0015, итого примерно четверть цента. Тысяча запусков в месяц обойдется менее чем в $3. Тот же узел при использовании Opus 4.8 будет стоить примерно в пять раз дороже. Это соотношение, умноженное на каждый созданный вами рабочий процесс, объясняет, почему важно осознанно выбирать модель для каждого узла.

Рабочий процесс 2: регулярный сбор RSS в структурированные строки

Теперь рассмотрим задачу по расписанию с выводом структурированных данных: ежечасное чтение RSS-ленты, классификация каждого элемента и добавление строк в таблицу.

  1. Триггер по расписанию (Schedule Trigger), каждый час.
  2. Чтение RSS (RSS Read), URL ленты. На выходе — по одному элементу на статью.
  3. Базовая цепочка LLM (Basic LLM Chain) с вложенным узлом Anthropic Chat Model, настроенным на claude-haiku-4-5, и вложенным узлом Structured Output Parser, содержащим JSON-схему.
  4. Google Sheets (или Postgres), добавление строки для каждого элемента.

Structured Output Parser превращает запрос «Claude, верни JSON» из надежды в обязательство: он проверяет ответ модели на соответствие вашей схеме и выдает ошибку при несоответствии, вместо того чтобы записывать некорректные данные. Пример схемы:

{
  "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"]
}

Промпт цепочки ссылается на элемент ленты:

Classify this article for a VPS hosting audience.

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

Здесь меняется расчет стоимости: она зависит от количества элементов, а не от количества запусков. Пятьдесят статей в час, двадцать четыре часа в сутки — это 36 000 вызовов Claude в месяц. На модели Haiku это составит примерно 40–90 долларов в зависимости от длины статей, на Opus — примерно в пять раз больше. Выполняйте дедупликацию перед узлом LLM (простая проверка IF по ранее встреченным ссылкам или узел Remove Duplicates в n8n), и число вызовов резко сократится, так как большинство ежечасных опросов не содержат ничего нового. Самый дешевый токен — это тот, который вы не потратили.

Рабочий процесс 3: AI-агент, использующий инструменты

Первые два рабочих процесса представляют собой конвейеры, где вы сами определяете шаги. Узел AI Agent меняет этот подход: вы задаете Claude цель и предоставляете инструменты, а он сам решает, какие инструменты вызывать и в каком порядке, пока задача не будет выполнена. n8n требует наличия вложенного узла чат-модели и как минимум одного вложенного узла инструмента.

Конкретный пример сборки: помощник по эксплуатации, который отвечает на вопрос «что не работает и почему», используя данные вашего мониторинга:

  1. Chat Trigger (или webhook) для получения вопроса.
  2. AI Agent с вложенным узлом Anthropic Chat Model, настроенным на claude-sonnet-5. Агенты планируют и выстраивают цепочки вызовов инструментов; Haiku может управлять простыми агентами с одним инструментом, но Sonnet — это разумный минимум, когда инструментов становится больше.
  3. HTTP Request, подключенный как инструмент, направленный на ваш API статуса Uptime Kuma или эндпоинт Zabbix. Второй HTTP-инструмент может обращаться к любому другому сервису с REST API.

Две настройки выполняют основную часть работы. System Message агента определяет его задачу: «Ты помощник по эксплуатации. Используй инструмент статуса для проверки текущего состояния мониторинга перед ответом. Сообщай только о тех мониторах, которые не работают, с указанием длительности простоя». А описание каждого инструмента — это не документация для людей, а способ, с помощью которого Claude решает, когда его вызвать. Описание «Возвращает текущее состояние up/down для всех отслеживаемых сервисов в формате JSON» будет использоваться в нужные моменты, тогда как «status API» будет проигнорировано или использовано неверно. При подключении узла HTTP Request в качестве инструмента включите опцию Optimize Response и выберите только нужные поля JSON, иначе каждый подробный ответ API будет отправлен в контекст модели как входные токены, за которые вы платите.

Установите Max Iterations для агента (по умолчанию 10) на минимально возможное рабочее значение; это разница между «агент сдался после 4 вызовов инструментов» и циклом из десятка запросов к модели. Учитывайте модель оплаты: каждая итерация повторно отправляет всю историю переписки, системное сообщение, вопрос и результаты всех предыдущих инструментов в качестве входных токенов. Запуск агента на шесть итераций может легко составить 20 000 совокупных входных токенов и 2 000 выходных: по вводным ценам Sonnet 5 это около $0.06, примерно $0.09 по стандартным тарифам $3/$15, что в двадцать раз дороже простого запуска суммаризации. Если вы обнаружите, что подключаете к одному агенту слишком много инструментов, это тот момент, когда запуск MCP-серверов на вашем VPS становится более чистой архитектурой.

Финансовые ограничения, так как за этим никто не следит

Автоматизированный рабочий процесс требует контроля, который человек за клавиатурой обеспечивает неявно. Четыре уровня защиты, от самых дешевых к более сложным.

Max Tokens на каждом узле Claude. Это жесткое ограничение на объем вывода. Для суммаризатора достаточно 300 токенов, для классификатора — 100. Это ограничивает наиболее затратную часть расходов (от 5 до 25 долларов за миллион выходных токенов против 1–5 долларов за входные) и служит аварийным тормозом: ошибка в промпте, из-за которой Claude начинает «рассуждать», обойдется в 300 токенов, а не в 8000.

Модель для каждого узла. Описано выше; это рычаг управления ценой с коэффициентом от пяти до десяти в текущей линейке моделей, настройка которого занимает десять секунд.

Ограничение циклов. Установите Max Iterations для агентов. Настройте таймаут рабочего процесса в его параметрах, чтобы зависшее выполнение завершалось, а не продолжало потреблять ресурсы. Будьте осторожны с параметром Retry On Fail для каждого узла: это подходящий инструмент для кратковременных ошибок, но повторные попытки увеличивают стоимость. Значение Max Tries, равное 3, с интервалом Wait Between Tries в 5000 мс означает, что при постоянной ошибке вы заплатите до трех раз за каждый элемент, прежде чем процесс остановится. Никогда не настраивайте повтор для узла, который уже успешно выполнил дорогостоящую операцию.

Рабочий процесс обработки ошибок как последний рубеж. Создайте рабочий процесс, начинающийся с узла Error Trigger, который отправляет имя сбойного процесса и текст ошибки в Slack, а затем укажите его в качестве Error Workflow в настройках каждого AI-процесса. Это позволяет отловить неприятный сценарий: процесс, запускаемый по расписанию, выдает ошибку при каждом выполнении, каждый час, в течение недели, расходуя токены перед тем, как завершиться. Сочетайте это с ежемесячным лимитом расходов в Anthropic Console и проверяйте страницу использования в консоли в первые несколько дней после запуска любых задач по расписанию. Если вы хотите точно понять, за что вам выставляют счета, руководство по использованию токенов подробно разбирает этот вопрос.

Режимы сбоев и соответствующие сообщения

Узел мгновенно завершается с ошибкой "Authorization failed - please check your credentials." API вернул код 401. Тело ответа:

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

Ключ вставлен с ошибкой, обрезан, содержит лишние пробелы или является шаблоном из руководства. Создайте учетные данные n8n заново и вставьте ключ еще раз. Если вчера все работало, проверьте, не был ли ключ отозван в консоли, или не привело ли восстановление тома к откату к учетным данным, зашифрованным с помощью другого N8N_ENCRYPTION_KEY.

Выполнения завершаются с ошибками 429 rate_limit_error, с сообщением вида "Number of request tokens has exceeded your per-minute rate limit." Лимиты запросов рассчитываются поминутно, а n8n позволяет легко запустить пятьдесят выполнений вебхуков или RSS одновременно. Решите проблему структурно: обрабатывайте элементы последовательно (используя Loop Over Items), а не параллельно, и настройте Retry On Fail с параметром Max Tries 3 и Wait Between Tries на максимуме в 5000 ms (n8n ограничивает это поле значением 5000 ms). Если требуется более длительная задержка, чтобы повторные попытки попали в следующее минутное окно, добавьте узел Wait в путь обработки ошибок или обрабатывайте элементы по одному. Ответ содержит заголовок retry-after, указывающий точное время ожидания; встроенная функция ожидания n8n не умеет его считывать, поэтому настройте более длительную паузу самостоятельно.

Ошибка 404 not_found_error при указании имени модели. Тело ответа содержит опечатку:

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

Использованы точки вместо дефисов (4.5 вместо 4-5), суффикс даты из устаревшей статьи или указана выведенная из эксплуатации модель. Исправьте ID в соответствии с актуальным списком. Эта проблема часто возникает у тех, кто вводит имя модели в поле как выражение, вместо того чтобы выбрать его из выпадающего списка.

Claude отвечает на вопрос, который вы не задавали. Ошибок нет, выполнение завершено успешно. Выражение n8n, ссылающееся на отсутствующее поле, например {{ $json.body.text }}, когда в полезной нагрузке использовалось message, подставляет литеральную строку undefined в ваш промпт, и Claude добросовестно отвечает на пустой запрос. Если ссылочный узел не выполнился вовсе, вы получите сообщение "Referenced node is unavailable", но отсутствие поля происходит без уведомлений. Перед активацией всегда запускайте процесс с реальными данными и проверяйте фактически сформированный промпт на панели ввода узла. Редактор выражений показывает разрешенное значение, и undefined будет виден, если проявить внимательность.

FAQ

Как подключить Claude к n8n?

Создайте API-ключ в консоли Anthropic на платформе platform.claude.com, затем в n8n добавьте учетные данные (credential) типа Anthropic и вставьте ключ в поле API Key. Каждый узел Claude, приложение Anthropic и подмодуль Anthropic Chat Model ссылаются на эти сохраненные учетные данные. n8n шифрует их с помощью N8N_ENCRYPTION_KEY, поэтому обязательно сделайте резервную копию ключа, иначе при потере тома (volume) вы потеряете и учетные данные.

Сколько стоит выполнение одного AI-воркфлоу?

Оцените количество токенов на один запуск и умножьте на стоимость модели за миллион токенов. По состоянию на июль 2026 года, Haiku 4.5 стоит $1/$5 за миллион входных/выходных токенов, а Sonnet 5 — $3/$15 (вводная цена $2/$10 действует до августа 2026 года). Суммаризация через вебхук на Haiku стоит около четверти цента; работа агента на Sonnet с несколькими вызовами инструментов обходится ближе к $0.06–$0.10, так как каждая итерация повторно отправляет всю историю переписки как входные данные. Проверяйте фактический расход на странице использования в консоли, а не полагайтесь на оценки.

Какую модель Claude использовать для автоматизаций в n8n?

Haiku 4.5 — для классификации, извлечения данных, суммаризации и маршрутизации, то есть для высоконагруженных задач, где критичны скорость и цена. Sonnet 5 — для узлов AI Agent и многошаговых логических рассуждений. Opus 4.8 — только в тех случаях, когда цена ошибки достаточно высока, чтобы оправдать стоимость $5/$25, что в пять раз дороже Haiku и почти в два раза дороже Sonnet. Настраивайте модель для каждого узла отдельно, а не для всего воркфлоу; один воркфлоу может сочетать все три модели.

Как предотвратить перерасход средств на API Claude в воркфлоу n8n?

Используйте многоуровневую защиту: установите низкое значение Max Tokens в каждом узле Claude, ограничьте Max Iterations для агентов, задайте таймаут для воркфлоу и используйте консервативные настройки Retry On Fail, чтобы сбои не приводили к многократному росту затрат на токены. Добавьте воркфлоу Error Trigger, который будет отправлять уведомления в Slack при сбое любого AI-воркфлоу, и установите ежемесячный лимит расходов в консоли Anthropic как жесткий потолок, который невозможно превысить с вашего VPS.

Взимается ли дополнительная плата за вызовы инструментов (tool calls) в AI Agent?

Отдельной комиссии за использование инструментов нет, но инструменты не бесплатны: каждый результат работы инструмента передается модели как входные токены, а каждая итерация агента повторно отправляет всю историю переписки. Объемный ответ API, переданный без фильтрации, может значительно превысить размер вашего исходного промпта. Включайте опцию Optimize Response в узлах HTTP Request и возвращайте только те поля, которые необходимы агенту.