Hermes n8n MCP
Hermes n8n MCP Plus
Локальный stdio MCP-мост для управления n8n из Hermes Agent — теперь с инструментами записи.
Это форк CyberSamuraiX/hermes-n8n-mcp, расширенный инструментами create_workflow, update_workflow и delete_workflow поверх исходного набора инструментов только для чтения/операций. Он даёт Hermes полное управление рабочими процессами n8n без публичного доступа к n8n через интернет и без хранения API-ключей в конфиге Hermes.
Что он делает
Предоставляет следующие MCP-инструменты:
health— проверка доступности API n8n и, опционально, статуса Docker-контейнераlist_workflows— список рабочих процессов, опционально с фильтром по состоянию активностиget_workflow— просмотр одного рабочего процесса с редактированием полей, содержащих секретыfind_workflows— поиск по метаданным рабочих процессовlist_executions— список последних выполненийget_execution— просмотр одного выполнения; данные полезной нагрузки по умолчанию отключеныrecent_failures— недавние неудачные/ошибочные выполненияexport_workflow— получение JSON рабочего процесса с редактированием секретов для резервного копирования/просмотраactivate_workflow— активация рабочего процесса по IDdeactivate_workflow— деактивация рабочего процесса по IDcontainer_logs— опциональные логи Docker с редактированием на уровне строкcreate_workflow— создание нового рабочего процесса из JSON-определения. По умолчанию — пробный запуск (dry-run).update_workflow— изменение существующего рабочего процесса по ID (имя, узлы, соединения, настройки, теги). Показывает текущее состояние перед применением. По умолчанию — пробный запуск.delete_workflow— окончательное удаление рабочего процесса по ID. Перед удалением показывает экспортную резервную копию. По умолчанию — пробный запуск.
Все три инструмента записи требуют явного аргумента confirm=true для фактического изменения данных. При вызове с confirm=false (по умолчанию) они возвращают предпросмотр того, что произойдёт, и не выполняют ни одного вызова API, изменяющего n8n.
Related MCP server: n8n-ops-mcp
Позиция по безопасности
Только stdio. Никакого HTTP-сервера. Никаких публичных портов.
API-ключ загружается из окружения или локального dotenv-файла.
.envисключён из git.Пример конфига использует
REPLACE_ME, никогда не реальный ключ.Ответы инструментов редактируют очевидные поля с учётными данными, токенами, секретами, паролями и авторизацией.
Данные полезной нагрузки выполнения по умолчанию отключены в
get_execution.Активация/деактивация рабочих процессов, создание, обновление и удаление — всё это производственные изменения. Относитесь к ним как к заряженному оружию.
Инструменты записи по умолчанию работают в режиме пробного предпросмотра; ничего не создаётся, не изменяется и не удаляется, пока вызывающий код явно не передаст
confirm=true.delete_workflowвсегда получает экспортную/резервную копию рабочего процесса перед подтверждённым удалением.
Требования
Python 3.10+
Hermes Agent с включённым нативным MCP
API-ключ n8n
n8n доступен с машины, на которой запущен Hermes, обычно
http://127.0.0.1:5678
Критическая фиксация зависимости: mcp==1.29.0
Официальный PyPI-пакет mcp выпустил ломающий v2.0.0 2026-07-28, который полностью удалил mcp.server.fastmcp (переименован в MCPServer, перемещены пути модулей, httpx заменён на httpx2 и многое другое). Если в requirements.txt используется свободное ограничение вида mcp>=1.29.0, pip install разрешится в 2.0.0, и сервер упадёт при импорте с ошибкой:
ModuleNotFoundError: No module named 'mcp.server.fastmcp'Этот репозиторий фиксирует mcp==1.29.0 (последний стабильный релиз до v2) как жёсткую фиксацию, а не нижнюю границу. Не ослабляйте это ограничение, пока кодовая база не будет перенесена на v2 API MCPServer. Если вы когда-нибудь увидите ошибку выше, проверьте pip show mcp — если там указано 2.0.0 или новее, выполните:
pip uninstall -y mcp
pip install "mcp==1.29.0"Установка
git clone https://github.com/csenguttuvan/hermes-n8n-mcp-plus.git
cd hermes-n8n-mcp-plus
python3 -m venv .venv
. .venv/bin/activate
pip install -r requirements.txtПроверьте, что установка попала на правильную версию SDK, прежде чем продолжать:
pip show mcp
python -c "from mcp.server.fastmcp import FastMCP; print('OK')"Сохранение ключа n8n
Ручная версия:
install -d -m 700 ~/.config/n8n-mcp-plus
cat > ~/.config/n8n-mcp-plus/env <<'EOF'
N8N_BASE_URL=http://127.0.0.1:5678
N8N_API_KEY=REPLACE_ME
N8N_MCP_TIMEOUT=30
N8N_CONTAINER_NAME=n8n
N8N_MCP_ALLOW_DOCKER_LOGS=true
EOF
chmod 600 ~/.config/n8n-mcp-plus/envЗамените REPLACE_ME локально. Не коммитьте реальный файл.
Инструменты этого форка также читают N8N_API_KEY / N8N_API_URL напрямую из окружения, а не только из dotenv-файла, так что вы можете альтернативно передавать их прямо из ~/.hermes/config.yaml с помощью интерполяции ${N8N_API_KEY} — см. ниже.
Конфиг Hermes
Добавьте это в ~/.hermes/config.yaml в раздел mcp_servers. Если исходный мост n8n уже зарегистрирован, добавьте это как вторую, отдельную запись (n8n_plus), а не заменяя её — это сохраняет безопасный запасной вариант только для чтения:
mcp_servers:
n8n:
command: /Users/admin/.hermes/mcp-installs/n8n/.venv/bin/python
args:
- /Users/admin/.hermes/mcp-installs/n8n/server.py
enabled: true
env:
N8N_API_KEY: "${N8N_API_KEY}"
N8N_API_URL: "http://localhost:5678/api/v1"
n8n_plus:
command: /Users/admin/projects/hermes-n8n-mcp-plus/.venv/bin/python
args:
- /Users/admin/projects/hermes-n8n-mcp-plus/server.py
enabled: true
env:
N8N_API_KEY: "${N8N_API_KEY}"
N8N_API_URL: "http://localhost:5678/api/v1"Отступы важны. Оба ключа n8n: и n8n_plus: должны находиться на одном уровне отступа, непосредственно под mcp_servers:, без каких-либо других ключей верхнего уровня, разрывающих блок между ними. Проверьте, что файл корректно парсится перед перезагрузкой:
python3 -c "import yaml; d = yaml.safe_load(open('/Users/admin/.hermes/config.yaml')); print(list(d.get('mcp_servers', {}).keys()))"Затем перезагрузите MCP в Hermes:
/reload-mcpИли из оболочки:
hermes mcp test n8n_plusИнструменты регистрируются с префиксом имени сервера, например mcp__n8n_plus__create_workflow, mcp__n8n_plus__health, в отличие от инструментов mcp__n8n__* исходного моста, если оба работают бок о бок.
Быстрая проверка вне Hermes
. .venv/bin/activate
python -m py_compile server.py
python -c "import server; print('imported OK')"
hermes mcp test n8n_plusЕсли import server зависает или выдаёт ModuleNotFoundError: No module named 'mcp.server.fastmcp', перепроверьте фиксацию mcp==1.29.0 выше — это почти всегда проблема версии зависимости, а не кода.
Использование инструментов записи
Все три инструмента записи следуют одному и тому же шаблону «пробный запуск по умолчанию». Пример потока для create_workflow:
Call mcp__n8n_plus__create_workflow with workflow={"name": "test", "nodes": [], "connections": {}} and confirm=false.Возвращает предпросмотр, без изменений:
{
"ok": false,
"error": "Dry run only. Set confirm=true to create the workflow.",
"workflow_preview": { "name": "test", "nodes": [], "connections": {} }
}Когда предпросмотр выглядит правильно, повторите с confirm=true, чтобы фактически создать. Тот же шаблон применяется к update_workflow (показывает текущее состояние и предлагаемый патч) и delete_workflow (показывает экспортную резервную копию перед удалением).
Рекомендуемый порядок тестирования для любого нового окружения: create_workflow, затем list_workflows для подтверждения создания, затем update_workflow, затем delete_workflow — каждый с одноразовым рабочим процессом, проверяемым в UI n8n на каждом шаге.
Логи Docker
container_logs обращается к Docker через оболочку. Если пользователь, запускающий Hermes, не имеет доступа к Docker, установите:
N8N_MCP_ALLOW_DOCKER_LOGS=falseОстальные API-инструменты продолжат работать.
Заметки для производственного использования
Держите n8n привязанным к loopback за вашим обратным прокси.
Не открывайте этот MCP-мост через Caddy, nginx или Docker-порты.
Ротируйте API-ключи n8n, если они когда-либо попадали в логи чатов, терминалы, вывод CI, скриншоты или трекеры задач.
Делайте резервные копии рабочих процессов перед их изменением.
update_workflowиdelete_workflowоба показывают состояние перед подтверждением, но всегда проверяйте предпросмотр сами, прежде чем передаватьconfirm=true.Никогда не ослабляйте фиксацию
mcp==1.29.0вrequirements.txtбез предварительного тестирования с v2 APIMCPServer.
План развития
Миграция с
FastMCP(v1.x) наMCPServer(v2.x), когда v2 API стабилизируется и набор инструментов этого форка будет проверен на совместимость.Рассмотреть добавление
run_workflowкак четвёртого инструмента записи для ручных триггеров выполнения.
Лицензия
MIT. См. LICENSE.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceMCP server for n8n workflow automation, enabling management of workflows, executions, credentials, tags, users, and webhooks via an MCP-compatible client.MIT
- AlicenseAqualityAmaintenanceProvides ops-focused n8n tools for MCP-compatible agents, enabling listing, inspecting, triggering, validating, managing tags, running security audits, and safely editing n8n workflows with auto-backup and confirm gates.20811MIT
- AlicenseNot gradedqualityDmaintenanceMCP server for managing n8n workflows and executions. Enables listing, activating, deactivating, and executing workflows, as well as monitoring executions and instance health.MIT
- AlicenseAqualityCmaintenanceFree and open-source MCP server for managing n8n workflows, executions, and tags via n8n's API. Enables workflow creation, activation, debugging, and deletion from any MCP client.122MIT
Related MCP Connectors
Create, browse, remix, collaborate on, and run durable AI workflow nodes from MCP hosts.
Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.
MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/csenguttuvan/hermes-n8n-mcp-plus'
If you have feedback or need assistance with the MCP directory API, please join our Discord server