Гайд · Langflow + MCP

Как собрать ИИ-агента в Langflow
с MCP и субагентами

Пошаговая схема: flow, MCP-серверы, субагенты и REST API — плюс сравнение с n8n, Flowise и LangChain

Гайд · Langflow + MCP

Если вы уже пишете тексты в ChatGPT или Claude, у вас есть помощник. Но это ещё не ИИ-агент. Агент — это схема, где модель не только отвечает текстом, а сама решает, когда вызвать инструмент: поискать в файлах, дернуть API, проверить черновик, передать задачу другому агенту.

Коротко. Langflow — open-source визуальный конструктор на Python: вы собираете агента блоками на холсте, подключаете MCP-инструменты, субагентов и отдаёте результат наружу через REST API. На момент гайда актуальна ветка 1.10.x; старт возможен через Desktop, Docker или пакет uv.

langflow · pipeline
# минимальный контур
Chat In → Agent → Tools
MCP / Subagent → Chat Out
Share/api/v1/run/{id}
# HITL: approve перед публикацией

Маркер: простыми словами. ИИ-агент — это не «умный чат», а связка «модель + инструменты + правила», где модель сама выбирает следующий шаг, а не ждёт, пока вы вручную скопируете ответ в другую программу.

Чем агент отличается от «просто промпта»

Промпт даёт один ответ. Агент может:

  • взять бриф и разложить его на задачи;
  • вызвать поиск или файловый MCP-сервер;
  • отдать черновик субагенту-редактору;
  • вернуть готовый JSON или текст в ваш бот, форму или CRM через API.

Для маркетолога и владельца контента это разница между «поговорил с нейросетью» и «собрал конвейер: бриф → черновик → проверка → выдача наружу».

Когда хватит готового ассистента, а когда нужна сборка

Хватит готового чата, если задача разово: придумать заголовок, переписать абзац, спросить идею. Сборка в Langflow нужна, когда:

  • один и тот же сценарий повторяется каждый день;
  • нужны инструменты (файлы, веб, внешние API), а не только текст;
  • результат должен уходить в Telegram, WordPress или другую систему без копипаста;
  • вы хотите локальный контур и контроль над ключами.

Платформа для создания ИИ-агентов здесь — именно визуальная: без обязательного написания всего пайплайна руками на Python, хотя Langflow и стоит на экосистеме LangChain.

Что получите к концу гайда

Рабочий flow: Agent + Tool Mode + MCP + субагент, прогон в Playground/Traces и вызов через POST /api/v1/run с границей HITL перед публикацией.

1.10.x
Актуальная ветка Langflow в гайде
3
Пути старта: Desktop, Docker, uv
Паттерн для контента

Langflow = мозг · n8n = руки · человек = approve

Langflow за 10 минут: что ставите и что увидите в редакторе

Официально есть три пути установки. Для новичка из России разумный порядок такой: сначала Desktop или Docker, затем — только если нужен тонкий контроль — пакет через uv.

СпособКому подходитПорт UIОговорка
Langflow Desktopбыстрый старт на Windows/macOSобычно 7868нет Shareable Playground и Voice Mode
Dockerлокальный сервер, повторяемый контур7860удобно для self-host
uv pip install langflowкто готов к Python-окружению7860чистый pip часто «висит» — docs советует uv

Минимум по ресурсам: 2 ядра и 2 GB RAM; комфортнее от 4 GB. Из России Desktop и Docker обычно доступны без отдельного SaaS: вы крутите интерфейс у себя. Оплата нужна не за сам Langflow (MIT, open-source), а за модели: OpenAI, Anthropic и др. — с картами и доступом из РФ бывают сложности. Рабочий путь: ключи через доступный провайдер/прокси, либо локальные модели (Ollama и аналоги) в self-host связке.

Маркер: простыми словами. Flow (флоу) — это схема агента на холсте: блоки (ноды) соединены стрелками. Каждый блок — модель, промпт, инструмент или вход/выход чата. Сохранили flow — получили повторяемый сценарий, а не разовый диалог.

Установка и первый flow

1

Выберите способ запуска

Desktop: скачайте с официального сайта документации Langflow и установите. Docker: docker run -p 7860:7860 -e LANGFLOW_AUTO_LOGIN=true langflowai/langflow:latesthttp://localhost:7860/. Python: через uv, затем uv run langflow runhttp://127.0.0.1:7860.

2

Откройте шаблон

Для первого раза возьмите Simple Agent или Basic Prompting. Simple Agent уже даёт Agent + Chat Input/Output + простые инструменты вроде калькулятора и URL.

3

Модель и ключ

Укажите модель и API-ключ в настройках компонента модели. Сохраните flow.

Признак успеха. В Playground вы пишете сообщение — видите ответ и (если есть инструменты) вызовы tools. Если ответа нет: проверьте ключ модели, что Chat Input/Output подключены, и что flow сохранён.

Типичные ошибки новичка.

  1. Поставили через обычный pip и зависли на установке → перейдите на uv.
  2. Открыли не тот порт (7860 vs 7868 у Desktop) → смотрите адрес в docs/логах запуска.
  3. Ожидаете Shareable Playground на Desktop → его там нет; тестируйте локальный Playground.

Официальная документация — docs.langflow.org. Русскоязычный обзор возможностей UI — на Хабре у RUVDS (ссылки в конце).

Где живут модели, инструменты и память

В редакторе три слоя, которые важно не путать:

  • Модель — «мозг» (какой LLM отвечает).
  • Инструменты — то, что агент может вызвать (MCP Tools, Calculator, URL, другой Agent в Tool Mode).
  • Память / RAG — если нужен доступ к вашим текстам: шаблон Vector Store RAG (загрузка embeddings + запрос).

Не тащите всё в один гигантский flow с первого дня. Сначала минимальный контур, потом MCP, потом субагенты.

Визуализация · не hero

Как «оживает» flow: агент → MCP → субагент → API

После установки редактора важно увидеть не кнопки, а путь сигнала: запрос входит в Chat Input, агент решает вызвать инструмент, MCP отдаёт действие, субагент помогает, а наружу уходит ответ по REST.

  • Tool Mode: нода становится инструментом — у Agent появляется порт Tools.
  • MCP: внешние действия (fetch, файлы, сервисы), а не только текст модели.
  • Share → API: тот же flow вызывается из бота или скрипта через POST /api/v1/run/….

Дальше — собираем минимальный контур по шагам: модель, инструменты, ответ и типичные ошибки сборки.

Редакционная схема runtime, не скриншот UI Langflow. Цикл: вход → агент → MCP/субагент → Chat Out → API.

Собираем агента по шагам: от одной ноды до рабочего сценария

Ниже — контур, который новичок может повторить за один вечер.

Минимальный контур: модель → инструменты → ответ

Шаг 1. Создайте новый flow из Simple Agent или соберите вручную: Chat Input → Agent → Chat Output.

Шаг 2. В Agent задайте системный промпт простым языком: кто он, что делает, чего не делает. Пример для контента: «Ты редактор. Сначала уточняешь бриф, потом пишешь черновик. Не публикуешь ничего сам.»

Шаг 3. Добавьте один простой инструмент (Calculator или URL). В header меню компонента включите Tool Mode — появится порт Toolset. Соедините его с портом Tools у Agent.

Маркер: простыми словами. Tool Mode — переключатель «сделай этот блок инструментом агента». Агент сам решает, когда его вызвать. Без Tool Mode блок просто стоит на схеме, но агент его «не видит» как действие.

Шаг 4. Откройте Edit Tool Actions: проверьте Description и Slug. Описание пишите так, будто объясняете стажёру: «Искать страницу по URL и вернуть текст», а не «tool1».

Шаг 5. Запустите Playground. Спросите то, что требует инструмент. В Traces/логах должны быть видны tool calls.

Признак успеха. Агент отвечает и хотя бы один раз вызывает tool по делу; в Traces видны вход/выход инструмента.

Типичные ошибки сборки и как их ловить сразу

ОшибкаКак проявляетсяЧто сделать
Пустое или мутное Description у ActionАгент игнорирует tool или зовёт не тотПереписать описание глаголом + результатом
Нет Chat OutputFlow не экспортируется как MCP-tool / ломается сценарий ответаДобавить Chat Output
Слишком много tools сразуАгент «метается», ответы длинные и хаотичныеОставить 1–3 инструмента, остальное отключить в Actions
Секреты в экспорте JSONКлючи уезжают в файл flowВынести ключи в env / настройки сервера

Создание ИИ-агента с нуля в Langflow — это цикл: собрал → прогнал в Playground → посмотрел Traces → поправил описания → снова прогнал. Не переходите к API, пока сценарий не стабилен в UI.

MCP: как подключить сервер, чтобы агент умел действия, а не только текст

Без инструментов агент остаётся болтливым чатом. MCP как раз даёт общий «язык» между ИИ и сервисами.

Маркер: простыми словами. MCP (Model Context Protocol) — договорённость, как ИИ подключается к инструментам: файлам, поиску, API. MCP-сервер — программа, которая отдаёт набор таких инструментов. Langflow умеет и подключаться к чужим серверам (клиент), и сам отдавать ваши flows как инструменты (сервер).

MCP сервер простыми словами: зачем протокол между ИИ и инструментами

Раньше каждый инструмент клеили отдельным костылем. MCP стандартизирует подключение: зарегистрировали сервер → агент видит его tools. В Langflow 1.10.x компонент называется MCP Tools. С версии 1.9.x сервер сначала добавляют в Settings → MCP Servers (или сайдбар MCP), потом перетаскивают на холст.

Три режима клиента:

  • JSON — вставили готовый mcpServers-конфиг;
  • STDIO — локальный процесс: Name + Command + Args (пример Fetch: uvx mcp-server-fetch);
  • HTTP/SSE — удалённый URL + заголовки.

Сам Langflow как MCP-сервер по умолчанию отдаёт streamable HTTP (/streamable), SSE — запасной вариант. Эндпоинты проекта и глобальный описаны в docs; клиентам вроде Claude Desktop часто дают JSON с прокси и опциональным x-api-key.

Подключение и проверка: локальный MCP vs облачный

Локальный (STDIO) удобен для файлов и fetch на вашей машине: данные не уезжают «в чужой MCP SaaS». В Docker помните: для npx-серверов внутри образа нужен Node.js.

HTTP/SSE — когда сервер уже крутится отдельно или вы подключаете Langflow-as-server к другому клиенту.

Проверка.

  1. Settings → Add MCP Server → сохранили.
  2. На flow положили MCP Tools, выбрали сервер (конкретный tool или все).
  3. Включили Tool Mode / подключили к Agent.
  4. В Playground дали задачу, которая без tool невозможна.
  5. В Traces увидели вызов MCP-tool.

Параметры use_cache (по умолчанию false) и verify_ssl (true) трогайте только если понимаете зачем. Env MCP можно подкручивать через tweaks в API /run и /webhook — это уже для прод-контура.

Какие серверы брать первыми

Для учебного контент-сценария хватит трёх типов:

  1. Fetch / веб — достать текст страницы по URL.
  2. Filesystem — читать локальные брифы и брендбук (осторожно с путями и правами).
  3. Свой flow как MCP-tool — когда Langflow сам публикует проект: другие клиенты вызывают ваш сценарий как инструмент.

Не начинайте с десятка серверов «на всякий случай». Один понятный tool лучше пяти молчаливых.

Fetch / веб

Достать текст страницы по URL для референса или фактуры.

Filesystem

Читать брифы и брендбук локально — с контролем путей.

Свой flow

Опубликовать проект Langflow как MCP-tool для других клиентов.

Субагенты внутри flow: кто что делает и кто отвечает за итог

Субагент в этом гайде — не банковский термин. Это второй (третий) Agent на том же холсте, которого основной агент вызывает как инструмент.

Маркер: простыми словами. Субагент — «сотрудник» с узкой ролью внутри схемы. Оркестратор решает, кому отдать задачу. Альтернатива: компонент Run Flow — другой сохранённый flow становится action без второго Agent-блока.

Роли: исследователь, исполнитель, контролёр

Практичная тройка для контента:

  • Исследователь — собирает факты/ссылки (MCP fetch, RAG).
  • Исполнитель (драфтер) — пишет черновик по брифу.
  • Контролёр — проверяет факты, тон, SEO-чеклист, запрещённые формулировки.

Сборка: второй Agent → Tool Mode → Tools основного агента. В Actions задайте понятный slug и description, например: «Пишет черновик статьи по брифу, без публикации».

Как не устроить «оркестр без дирижёра»

Правила, которые спасают новичка:

  • один оркестратор с ясным промптом «ты распределяешь, не пишешь всё сам»;
  • у каждого субагента одна зона ответственности;
  • в Actions отключите лишние действия;
  • сначала прогоните цепочку в Playground и смотрите Traces: кто кого вызвал и сколько раз.

Если субагенты дублируют работу — описания слишком похожи. Разведите формулировки: «только структура», «только черновик», «только проверка».

REST API: как вызвать агента из своего сервиса или бота

Когда сценарий стабилен в Playground, отдайте его наружу. В UI: Share → API access — готовые сниппеты Python, JS и curl.

Маркер: простыми словами. REST API — способ вызвать агента по HTTP-адресу из другой программы (бот, сайт, CRM). Endpoint — конкретный URL, куда шлёте запрос. Для Langflow основной продакшн-вызов: POST /api/v1/run/{FLOW_ID} с заголовком x-api-key.

Какой endpoint нужен для продакшн-сценария

Два разных контура — не путайте:

ЗадачаEndpointЧто вернётся
Синхронный запуск flowPOST /api/v1/run/{FLOW_ID}Результат прогона
Событие извне (CRM, кнопка, бот)POST /api/v1/webhook/{FLOW_ID}Обычно «задача стартовала»

Payload для /run типично включает input_type, output_type, input_value, опционально tweaks. Интерактивные docs — на /docs вашего инстанса.

Webhook по умолчанию с auth (LANGFLOW_WEBHOOK_AUTH_ENABLE=True): ключ в header или query. В проде auth не отключайте.

Авторизация, таймауты и логи ответов

  • Храните x-api-key в секретах окружения, не в репозитории и не в публичном flow JSON.
  • Заложите таймаут на стороне клиента: агент с MCP и субагентами думает дольше «голого» чата.
  • Логируйте FLOW_ID, время, статус и короткий хэш входа — так проще отлаживать «бот молчит».
  • Shareable Playground (/public_flow/...) — для демо UI, не для встраивания в прод.

Из России вызывайте свой self-host Langflow (VPS/домашний Docker) или сервер команды: так вы не зависите от чужого SaaS-UI. Модельные ключи всё равно нужны — планируйте доступ заранее.

Локальный запуск в Docker: агент у себя, без «утечки» в чужой SaaS

Локальный ИИ-агент на Docker — рабочий путь для тех, кто не хочет отдавать брифы и брендбук в чужой облачный конструктор. Langflow UI и оркестрация крутятся у вас; наружу уходят только вызовы модели (если модель не локальная).

Docker-контур: что монтировать и что не светить наружу

  1. Поднимите контейнер на 7860 (см. команду выше) или свой docker-compose.
  2. Проброс портов только на localhost или VPN, не 0.0.0.0 без firewall.
  3. Секреты — через -e / env-файл, не в git.
  4. Если нужны npx-MCP — убедитесь, что в образе есть Node, либо вынесите MCP отдельным контейнером по HTTP.
  5. Для контент-команды часто рядом ставят Ollama/LibreChat — как в разборе локального стека на Хабре у Альфа-Банка (ссылка в конце), но это уже следующий уровень: сначала освойте один Langflow.

Чеклист «поднялось / отвечает / пишет логи»

  • UI открывается по нужному порту
  • Логин/доступ понятен (не оставили AUTO_LOGIN в публичном проде)
  • Simple Agent отвечает в Playground
  • MCP Tools видит зарегистрированный сервер
  • /api/v1/run/{id} с ключом возвращает 200 и осмысленный output
  • Webhook без ключа — отказ; с ключом — старт задачи
  • В логах/Traces видны tool calls

Langflow, n8n, Flowise или LangChain: что выбрать под задачу

Спрос на «как создать ИИ агента» большой, а инструментов много. Короткая карта без мифов.

Визуальный конструктор vs код на LangChain

LangChain — библиотека для разработчиков: гибко, но всё в коде. Langflow визуализирует похожие идеи: быстрее PoC, проще показать маркетологу. Если команда уже пишет Python-агентов и нужен полный контроль — код на LangChain/LangGraph. Если нужно собрать и отладить глазами — Langflow.

Когда n8n сильнее в автоматизации, а Langflow — в агентах

n8n сильнее, когда AI — один шаг в бизнес-процессе: 400+ интеграций, триггеры, очереди, ops. Langflow сильнее, когда AI — продукт: RAG, multi-agent, кастомный Python, экспорт flow как MCP-сервер.

Частый паттерн: Langflow = мозг, n8n = руки (approve, постинг, CRM) через API или MCP.

Flowise как сосед по полке: плюсы и пределы

Flowise ближе к быстрым чатботам и RAG на TypeScript. Важный плюс сравнений 2026: в AgentFlow V2 есть нативный HITL. У Langflow классического pause/resume «как в LangGraph» из коробки для маркетолога нет — это честный минус, не «ещё не прочитали docs».

КритерийLangflowFlowisen8n
Сильная сторонаmulti-agent, Python, MCP server exportбыстрый PoC, HITLинтеграции и триггеры
MCPклиент + серверCustom MCP Toolузел в автоматизации
Когда братьагент — ядро продуктанужен HITL «из коробки»агент — шаг процесса

Практический сценарий: агент с MCP и API на одной схеме

Соберём контент-конвейер без выдуманных метрик — только схема, которую можно повторить.

Сборка end-to-end: flow → MCP-инструмент → REST-вызов

Шаг 1. Оркестратор. Agent с ролью редактора: принимает бриф, дробит работу.

Шаг 2. Субагенты или Run Flow. Три действия: извлечь бриф → написать черновик → проверить факты/тон. У каждого — свой Tool Mode и внятный Description.

Шаг 3. MCP. Подключите filesystem или fetch, чтобы агент читал брендбук/референс, а не выдумывал голосом.

Шаг 4. Playground. Прогоните 3 разных брифа. В Traces убедитесь, что порядок вызовов логичный.

Шаг 5. API. Share → API: вызов /run из формы или бота. Для событий из CRM — Webhook + Parser, но не сразу в автопостинг.

Шаг 6. HITL-граница. Человек смотрит черновик → только после «ок» отдельный webhook/сценарий публикации в Telegram или WordPress.

Маркер: простыми словами. HITL (human-in-the-loop) — точка, где человек обязан подтвердить действие. Для публикации контента это стоп перед постом: агент готовит текст, человек жмёт «да», и только потом срабатывает публикация.

Три рабочих границы HITL без нативной паузы Langflow:

  1. Ручной просмотр в Playground / отдельном UI перед продом.
  2. Разнести «написание» и «публикацию» на два flow: второй запускает только человек или n8n-approve.
  3. Связка Langflow (мозг) + n8n (нода подтверждения) по API.

Критерии «готово»: что должно пройти без ручных костылей

Считайте сборку готовой, если:

  • один и тот же бриф в Playground даёт стабильный порядок tool calls;
  • MCP не падает на путях и SSL;
  • /run с ключом возвращает черновик без ручного клика по нодам;
  • публикация невозможна без отдельного approve;
  • секреты не торчат в экспорте JSON.

FAQ

Короткие ответы на частые вопросы новичка

Можно ли собрать агента бесплатно и где упираетесь в лимиты

Сам Langflow open-source (MIT): UI и оркестрацию можно крутить бесплатно локально. Лимиты — железо, время на отладку и плата/доступ к моделям. «Бесплатные ИИ агенты» в поиске часто означают чужой SaaS с урезанными лимитами; self-host даёт контроль, но не отменяет стоимость токенов или локальной GPU.

Нужен ли Python/LangChain, если уже есть Langflow

Для базового сценария — нет: шаблоны Simple Agent, Tool Mode и MCP закрывают путь новичка. Python пригодится, когда пишете кастомные компоненты или глубоко кастомизируете tools. Знание идей LangChain помогает понимать термины, но не обязано быть входным билетом.

Чем MCP лучше «просто webhook на API»

Webhook — это «пни URL». MCP — каталог инструментов с описаниями, которые агент выбирает сам в рантайме. Для одного жёсткого вызова хватит webhook/API Request. Для набора действий (файлы + поиск + несколько серверов) MCP снижает хаос обвязки. Часто используют оба: MCP внутри агента, webhook снаружи для старта flow.

Как проверить, что субагенты не дублируют работу

Смотрите Traces: если два субагента вызываются на одну и ту же подзадачу подряд — перепишите Description и системные промпты. Добавьте в промпт оркестратора правило: «не вызывай проверяющего, пока нет черновика». Отключите лишние Actions.

Что проверяли по источникам

  • Официальная документация Langflow 1.10.x: установка, agents/tools, MCP client/server, API и webhook — docs.langflow.org
  • Русскоязычный разбор UI, Tool Mode и MCP — Habr RUVDS
  • Локальный Docker-стек с Langflow и MCP — Habr Альфа-Банк

Итог

Создание ИИ-агента в Langflow — это не магия и не «ещё один чат». Это навык: поставить UI → собрать минимальный Agent → включить Tool Mode → подключить MCP → при необходимости добавить субагентов → проверить в Playground/Traces → отдать /run или webhook → оставить человеку кнопку «да» перед публикацией. Так вы получаете локальный контролируемый контур под контент и автоматизацию — с понятной границей, где заканчивается агент и начинается ответственность редактора.

Beget — надёжный хостинг и VPS