Hermes n8n MCP
Hermes n8n MCP Plus
Lokale stdio-MCP-Brücke zur Verwaltung von n8n von Hermes Agent aus — jetzt mit Schreib-Tools.
Dies ist ein Fork von CyberSamuraiX/hermes-n8n-mcp, erweitert um create_workflow, update_workflow und delete_workflow auf Basis des ursprünglichen schreibgeschützten/Operations-Toolsets. Es bietet Hermes die vollständige n8n-Workflow-Verwaltung, ohne n8n über das öffentliche Internet zugänglich zu machen und ohne API-Schlüssel in deiner Hermes-Konfiguration abzulegen.
Was es tut
Stellt diese MCP-Tools bereit:
health— prüft die Erreichbarkeit der n8n-API und optional den Docker-Containerstatuslist_workflows— listet Workflows auf, optional nach aktivem Status gefiltertget_workflow— inspiziert einen Workflow, wobei Felder mit Geheimnissen geschwärzt sindfind_workflows— durchsucht Workflow-Metadatenlist_executions— listet letzte Ausführungen aufget_execution— inspiziert eine Ausführung; die Payload-Daten sind standardmäßig deaktiviertrecent_failures— letzte fehlgeschlagene/fehlerhafte Ausführungenexport_workflow— ruft geschwärztes Workflow-JSON für Backup/Überprüfung abactivate_workflow— aktiviert einen Workflow per IDdeactivate_workflow— deaktiviert einen Workflow per IDcontainer_logs— optionale Docker-Logs mit zeilenweiser Schwärzungcreate_workflow— erstellt einen neuen Workflow aus einer JSON-Definition. Standardmäßig als Dry-run.update_workflow— patcht einen bestehenden Workflow per ID (Name, Knoten, Verbindungen, Einstellungen, Tags). Zeigt den aktuellen Zustand vor dem Anwenden an. Standardmäßig als Dry-run.delete_workflow— löscht einen Workflow dauerhaft per ID. Zeigt vor dem Löschen eine Export-Backup-Vorschau an. Standardmäßig als Dry-run.
Alle drei Schreib-Tools erfordern ein explizites confirm=true-Argument, um tatsächlich etwas zu verändern. Bei Aufruf mit confirm=false (Standard) geben sie eine Vorschau dessen zurück, was passieren würde, und tätigen keinen API-Aufruf, der n8n verändert.
Related MCP server: n8n-ops-mcp
Sicherheitsvorkehrungen
Nur Stdio. Kein HTTP-Server. Kein öffentlicher Port.
Der API-Schlüssel wird aus der Umgebung oder aus einer lokalen dotenv-Datei geladen.
.envist gitignoriert.Die Beispielkonfiguration verwendet
REPLACE_ME, niemals einen echten Schlüssel.Tool-Antworten schwärzen offensichtliche Credential-, Token-, Secret-, Passwort- und Autorisierungsfelder.
Die Payload-Daten der Ausführung sind in
get_executionstandardmäßig deaktiviert.Workflow-Aktivierung/-Deaktivierung, Erstellen, Aktualisieren und Löschen sind allesamt Produktionsänderungen. Behandle sie wie geladene Waffen.
Schreib-Tools führen standardmäßig nur eine Dry-run-Vorschau aus; nichts wird erstellt, gepatcht oder gelöscht, außer der Aufrufer übergibt explizit
confirm=true.delete_workflowruft vor einem bestätigten Löschen immer eine Export-/Backup-Vorschau des Workflows ab.
Voraussetzungen
Python 3.10+
Hermes Agent mit aktiviertem nativem MCP
n8n-API-Schlüssel
n8n erreichbar von der Maschine, auf der Hermes läuft, normalerweise
http://127.0.0.1:5678
Kritische Abhängigkeits-Fixierung: mcp==1.29.0
Das offizielle PyPI-Paket mcp hat am 2026-07-28 ein abwärtsinkompatibles Release v2.0.0 veröffentlicht, das mcp.server.fastmcp vollständig entfernt hat (umbenannt in MCPServer, Modulpfade verschoben, httpx durch httpx2 ersetzt und mehr). Wenn requirements.txt eine lockere Einschränkung wie mcp>=1.29.0 verwendet, wird pip install auf 2.0.0 aufgelöst und der Server stürzt beim Import ab mit:
ModuleNotFoundError: No module named 'mcp.server.fastmcp'Dieses Repository fixiert mcp==1.29.0 (die letzte stabile Version vor v2) als feste Version, nicht als Untergrenze. Lockere diese Einschränkung nicht, bis die Codebasis auf die v2-MCPServer-API migriert ist. Falls du den obigen Fehler jemals siehst, überprüfe pip show mcp — wenn es 2.0.0 oder neuer meldet, führe aus:
pip uninstall -y mcp
pip install "mcp==1.29.0"Installation
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.txtVerifiziere, dass die Installation auf der richtigen SDK-Version gelandet ist, bevor du weitermachst:
pip show mcp
python -c "from mcp.server.fastmcp import FastMCP; print('OK')"Speichere deinen n8n-Schlüssel
Manuelle Version:
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/envErsetze REPLACE_ME lokal. Committe die echte Datei nicht.
Die Tools dieses Forks lesen N8N_API_KEY / N8N_API_URL auch direkt aus der Umgebung, nicht nur aus einer dotenv-Datei, sodass du sie alternativ direkt aus ~/.hermes/config.yaml per ${N8N_API_KEY}-Interpolation injizieren kannst — siehe unten.
Hermes-Konfiguration
Füge dies unter mcp_servers zu ~/.hermes/config.yaml hinzu. Wenn die ursprüngliche n8n-Brücke bereits registriert ist, füge dies als zweiten, separaten Eintrag (n8n_plus) hinzu, anstatt es zu ersetzen — so bleibt ein sicherer schreibgeschützter Fallback verfügbar:
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"Die Einrückung ist wichtig. Sowohl n8n: als auch n8n_plus: müssen auf derselben Einrückungsebene direkt unter mcp_servers: stehen, ohne dass ein anderer Top-Level-Schlüssel den Block dazwischen unterbricht. Prüfe, dass die Datei korrekt geparst wird, bevor du neu lädst:
python3 -c "import yaml; d = yaml.safe_load(open('/Users/admin/.hermes/config.yaml')); print(list(d.get('mcp_servers', {}).keys()))"Lade dann MCP in Hermes neu:
/reload-mcpOder über die Shell:
hermes mcp test n8n_plusDie Tools registrieren sich mit dem Servernamen-Präfix, z. B. mcp__n8n_plus__create_workflow, mcp__n8n_plus__health, unterscheidbar von den mcp__n8n__*-Tools der ursprünglichen Brücke, falls beide parallel laufen.
Rauchtest außerhalb von Hermes
. .venv/bin/activate
python -m py_compile server.py
python -c "import server; print('imported OK')"
hermes mcp test n8n_plusWenn import server hängt oder einen ModuleNotFoundError: No module named 'mcp.server.fastmcp' wirft, überprüfe die mcp==1.29.0-Fixierung oben — das ist fast immer ein Problem der Abhängigkeitsversion, kein Code-Problem.
Verwendung der Schreib-Tools
Alle drei Schreib-Tools folgen demselben Muster, bei dem standardmäßig ein Dry-run ausgeführt wird. Beispielablauf für create_workflow:
Call mcp__n8n_plus__create_workflow with workflow={"name": "test", "nodes": [], "connections": {}} and confirm=false.Gibt eine Vorschau zurück, keine Änderung:
{
"ok": false,
"error": "Dry run only. Set confirm=true to create the workflow.",
"workflow_preview": { "name": "test", "nodes": [], "connections": {} }
}Sobald die Vorschau richtig aussieht, führe sie erneut mit confirm=true aus, um den Workflow tatsächlich zu erstellen. Dasselbe Muster gilt für update_workflow (zeigt den aktuellen Zustand und den vorgeschlagenen Patch an) und delete_workflow (zeigt vor dem Löschen eine Export-Backup-Vorschau an).
Empfohlene Testreihenfolge für jede neue Umgebung: create_workflow, dann list_workflows, um zu bestätigen, dass es angekommen ist, dann update_workflow, dann delete_workflow — jeweils mit einem Wegwerf-Workflow und in jedem Schritt gegen die n8n-Oberfläche verifiziert.
Docker-Logs
container_logs ruft Docker über die Shell auf. Wenn der Benutzer, der Hermes ausführt, keinen Zugriff auf Docker hat, setze:
N8N_MCP_ALLOW_DOCKER_LOGS=falseDie übrigen API-Tools funktionieren weiterhin.
Hinweise für den Produktionseinsatz
Halte n8n hinter deinem Reverse-Proxy an Loopback gebunden.
Stelle diese MCP-Brücke nicht über Caddy-, nginx- oder Docker-Ports bereit.
Rotiere n8n-API-Schlüssel, falls sie jemals in Chat-Logs, Terminals, CI-Ausgaben, Screenshots oder Issue-Trackern auftauchen.
Sichere Workflows, bevor du sie veränderst.
update_workflowunddelete_workflowzeigen beide den Zustand vor der Bestätigung an, aber überprüfe die Vorschau immer selbst, bevor duconfirm=trueübergibst.Lockere die
mcp==1.29.0-Fixierung inrequirements.txtniemals, ohne zuvor gegen dieMCPServer-v2-API zu testen.
Roadmap
Migriere von
FastMCP(v1.x) zuMCPServer(v2.x), sobald die v2-API stabil ist und das Toolset dieses Forks als kompatibel verifiziert wurde.Ziehe in Betracht,
run_workflowals viertes Schreib-Tool für manuelle Auslöser hinzuzufügen.
Lizenz
MIT. Siehe 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