Hermes vs n8n comes down to who decides the steps: in n8n you draw every step as a node, and in Hermes Agent you describe the goal and the agent works out the steps itself.
I'd run both, and I'd connect them so each one can hand work to the other.
The Hermes Agent docs describe an open-source agent from Nous Research that writes skills from finished work and keeps memory across sessions.
The n8n docs call n8n a fair-code tool that joins business process automation with AI features.
This is the order I'd set them up in, the two ways to connect them, and the settings that catch people out.
If you'd rather have my team sort your processes into the right tool, book a free SEO strategy session.
What each tool is actually built to do
n8n is a workflow builder.
You place a trigger on a canvas, connect nodes after it, and the run moves through them in the order you drew.
The n8n README lists 1500+ integrations and 9,000+ templates, and lets you drop into JavaScript, Python or npm packages when a node isn't enough.
Hermes is an agent.
You talk to it in a terminal, the desktop app or a chat app, and it picks its own tools to finish the job.
Its messaging gateway reaches Telegram, Discord, Slack, WhatsApp, Signal, email, SMS, Microsoft Teams and more from a single background process.
So n8n is the plumbing you design, and Hermes is the worker that reasons about what to do next.
Hermes vs n8n side by side
| Area | Hermes Agent | n8n |
|---|---|---|
| Core model | Agent that chooses its own steps | Workflow of nodes you connect on a canvas |
| License | MIT, open source | Sustainable Use License plus n8n Enterprise License (fair-code) |
| Where it runs | Your machine, a server, Docker or a remote sandbox | n8n Cloud, or self-hosted with npm or Docker |
| Scheduling | Cron in plain language or cron syntax | Schedule Trigger node, intervals or a cron expression |
| Inbound events | Webhook adapter with HMAC-signed routes | Webhook node with test and production URLs |
| Human sign-off | Approval modes for dangerous commands | Approve or Deny on chosen AI Agent tools, plus the Wait node |
| MCP | MCP client with a curated catalog; MCP server via a plugin | MCP Client nodes, MCP Server Trigger, instance-level MCP server |
| Where people reach it | 20+ chat platforms through one gateway | Chat Trigger, and Slack, Telegram or Linear channels for n8n agents |
Neither Nous Research nor n8n publishes this comparison, so the table is my own reading of each tool's documentation.
Step 1: install Hermes and pick a model
On Linux, macOS or WSL2, one line installs it.
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
hermes model
Windows users can grab the Desktop installer from the installation page instead.
hermes model walks you through a provider, and the providers page covers Nous Portal, OpenRouter, Anthropic, OpenAI, xAI, Kimi, MiniMax and local endpoints such as Ollama.
Then run hermes gateway setup and connect the one chat app you'll actually use, usually Telegram or Slack.
Step 2: stand up n8n on Cloud or your own box
n8n gives you two routes on its deployment page: a managed n8n Cloud account, or a self-hosted install you run.
Pick Cloud if nobody on the team wants to patch servers.
Pick self-hosted if you need full control over where the data sits.
The README's Docker quick start maps port 5678, so the editor opens at http://localhost:5678.
Plan names on Cloud are Starter, Pro and Enterprise; self-hosted editions are Community, Registered Community, Business and Enterprise.
🔥 Want my exact Hermes and n8n wiring, step by step? Inside the AI Profit Boardroom you get step-by-step video trainings, the installable Agent OS, four coaching calls a week and 3,400+ members sharing the agent setups they run. → Join the AI Profit Boardroom
Step 3: switch on n8n's instance-level MCP server
This is the switch that lets Hermes see your workflows.
- Log in as the instance owner or an admin.
- Open Settings > Instance-level MCP and select Enable MCP access.
- Open Connect and copy the Server URL that ends in
/mcp-server/http. - On each workflow Hermes should run, turn on Available in MCP.
Copy the MCP Server URL, not the editor URL in your browser bar.
n8n's MCP server guide says workflows aren't exposed in bulk: you enable access once for the instance, then opt in each workflow.
Search is the one exception, and it only returns previews of workflows your account can already view.
Also note that every connected client sees every workflow you've exposed, so you can't hide one workflow from Hermes while showing it to another client.
Step 4: connect Hermes with the n8n-official catalog entry
Hermes ships a Nous-approved MCP catalog entry called n8n-official.
It talks to n8n's own MCP server over HTTP and signs in through browser OAuth, so you never paste an n8n API key.
hermes mcp install n8n-official
hermes mcp login n8n-official
hermes mcp configure n8n-official
The install asks for the Server URL from Step 3.
The login opens your browser so you can approve access inside n8n, and the desktop app or dashboard has an Authorize button that does the same job.
Start a fresh session or type /reload-mcp so the new tools load.
One gotcha: the Hermes backend has to be able to reach that URL, so a laptop Hermes can't see an n8n that only listens inside a private network.
The Hermes MCP page also says the older third-party n8n bridge is gone from the catalog; old installs keep loading as custom entries, but nothing migrates them for you.
If you set up that bridge months ago, add n8n-official alongside it and switch over on purpose.
Step 5: trim the tool list before Hermes touches production
The catalog entry warns that some n8n tools change or run workflows.
hermes mcp configure n8n-official shows every tool it discovered, so turn off the ones you don't want an agent calling.
For a first week I'd leave search and run enabled, and keep workflow editing off.
n8n's guide adds that its execute_workflow tool runs the published version by default, which is what you want for live work.
On the Hermes side, check approvals.mode in ~/.hermes/config.yaml.
The security page lists three modes: smart, the default, uses a helper model to judge risk; manual always asks you; off skips every prompt.
Leave it on smart or manual while you learn what the agent does with n8n.
Step 6: send events the other way, from n8n into Hermes
Sometimes n8n catches the event and Hermes should do the thinking.
Hermes has a webhook adapter for exactly that, documented on its webhooks page.
Enable it with hermes gateway setup, then add a route in config.yaml or with hermes webhook subscribe.
platforms:
webhook:
enabled: true
extra:
port: 8644
routes:
new-job:
secret: "long-random-string"
prompt: "New job request from {name}: {issue} at {address}. Draft a reply for the owner."
deliver: "telegram"
deliver_extra:
chat_id: "YOUR_CHAT_ID"
n8n then sends a POST to http://your-server:8644/webhooks/new-job from an HTTP Request node at the end of the workflow.
Every route needs a secret, and Hermes rejects a request that carries no recognized signature header.
The docs recommend the generic V2 scheme: an X-Webhook-Signature-V2 header holding an HMAC-SHA256 of the timestamp and body, plus an X-Webhook-Timestamp header within five minutes of the server clock.
Build that signature in an n8n Code node before the HTTP Request node.
The test-only INSECURE_NO_AUTH secret works only when the gateway listens on localhost, so don't plan around it.
The other reverse path is MCP: Hermes's own MCP server now lives in the mcp-serve plugin, installed with hermes plugins install mcp-serve and started with hermes mcp-serve.
n8n's MCP Client node is the piece that calls tools on an outside MCP server; read the plugin README for its tool list and safety limits first.
Step 7: decide which tool owns the clock
Both tools schedule work, and you don't want the same report firing twice.
n8n's Schedule Trigger runs on seconds, minutes, hours, days, weeks, months or a custom cron expression, and it only fires once the workflow is published.
Hermes cron takes lines like "every 2h" or a full sentence, attaches skills, and delivers the result to a chat, a file or another platform, per the cron docs.
My rule: if the job moves data between apps, n8n owns the schedule.
If the job ends with a person reading a summary in chat, Hermes owns it.
I go deeper on timers, skills and delivery targets in my Hermes Agent cron job walkthrough.
📞 Want my team to split your workflows between n8n and Hermes? Book a free SEO strategy session and we'll go through the processes you run each week and where each one belongs. → Grab a free strategy call
Worked example: a plumber's job requests
Here's how the reverse path looks for a small plumbing firm.
- A customer fills in the job form on the website.
- An n8n Webhook node catches the form on its production URL.
- n8n appends the request to a Google Sheet so nothing gets lost.
- A Code node signs the JSON, and an HTTP Request node posts it to the Hermes
new-jobroute. - Hermes drafts a reply with a likely time slot and sends it to the owner on Telegram.
- The owner edits the draft and sends it from their own phone.
n8n does the part that must happen every single time, and Hermes does the part that needs judgment.
Worked example: an agency's weekly client report
Now the forward path, for a five-person marketing agency.
- The agency already has an n8n workflow that pulls each client's numbers into a sheet.
- They mark that workflow Available in MCP.
- In Slack, the account manager asks Hermes to run the report workflow for one client.
- Hermes calls the workflow through
n8n-officialand reads the result. - Hermes writes a short plain-English summary and posts it back in the Slack thread.
Nobody opens the n8n canvas, and the workflow logic stays exactly where the team built it.
Gotchas I'd check before going live
- n8n's Webhook node has separate test and production URLs; the test one only listens while you're watching the canvas.
- The Schedule Trigger follows the workflow time zone, or the instance one if the workflow has none set.
- Hermes's
cron_modeandunattended_modeboth default to deny, so scheduled and webhook runs block dangerous commands instead of waiting for you. - Webhook payload fields are untrusted text, so keep prompts narrow and never let a form decide which tools run.
- n8n tool availability over MCP depends on your n8n version and account permissions, so check what
hermes mcp configureactually lists.
The license question you should settle first
Hermes is MIT-licensed on GitHub, so you can run, change and ship it in client work.
n8n's community license page explains the Sustainable Use License: use and modification are for your own internal business, non-commercial or personal purposes.
Files with .ee. in the name fall under the separate n8n Enterprise License.
If you plan to host n8n for clients or build it into something you sell, read n8n's license FAQ and talk to n8n first.
My verdict, by job type
Pick n8n when the steps are known in advance: form to CRM, order to sheet, invoice to email, the same path every run.
Pick Hermes when the work needs reading, deciding or writing: triaging messages, drafting replies, researching a supplier, briefing you on Telegram each morning.
Pick both when a fixed process should end in a judgment call, or a chat request should start a fixed process.
For most small teams that last case is the real answer, and the two connection paths above are how you build it.
If you want the prompts and configs I use for this, they're inside the AI Profit Boardroom.
Also On Our Network
- 🌐 Which of the two should run a small business admin, with salon and shop examples
- 🌐 A nine-criteria scorecard rating Hermes and n8n with a verdict by job
- 🌐 Five copy-paste prompts that make Hermes the operator and n8n the engine
- 🌐 Which AI models to run in Hermes and n8n, backed by GoldieBench scores
- 🌐 The complete Hermes vs n8n guide on the AI Profit Boardroom blog
FAQ: Hermes vs n8n
Do I need an n8n API key to connect Hermes?
No. The n8n-official catalog entry signs in with browser OAuth against n8n's own MCP server. You only paste the Server URL that ends in /mcp-server/http.
Why can't Hermes see one of my n8n workflows?
Each workflow has to be switched to Available in MCP after an owner or admin enables instance-level MCP. Search only shows previews of the rest.
What happened to the old n8n bridge in Hermes?
It was removed from the Hermes MCP catalog. Existing installs keep working as custom entries, but nothing moves them to n8n-official automatically.
How does n8n trigger Hermes?
Post to a Hermes webhook route on port 8644 with an HMAC signature, or call tools on Hermes's MCP server through the mcp-serve plugin and n8n's MCP Client node.
Which tool should run my scheduled jobs?
Let n8n schedule anything that moves data between apps, and let Hermes cron handle jobs that end in a written summary sent to a chat.
📺 Video notes + links to the tools 👉
🎥 Learn how I make these videos 👉
🆓 Get a FREE AI Course + Community + 1,000 AI Agents 👉
About Julian
I'm Julian Goldie, an SEO entrepreneur, author and founder of the AI Profit Boardroom, which has 3,400+ members.
I help business owners scale with AI agents, automation and SEO.
- I've built a 7-figure SEO and link building agency, Goldie Agency, with a team of 70+ SEO experts.
- I've grown a YouTube channel to 400,000+ subscribers.
- I wrote "Link Building Mastery".
- My Udemy courses have taught over 29,000 students.
→ Get my best AI training inside the AI Profit Boardroom
Turn on instance-level MCP, install n8n-official, and book a free strategy session if you want my team to settle hermes vs n8n for your own processes.











