CloudNavi
← Back to articles
Hermes Agent Plugin vs Skill vs MCP: The Complete Guide to Knowing the Difference and When to Use Each
AI Agents·1 min read
#Hermes Agent#Plugin#Skill#MCP#extension#Converse Mode

Summary

"I can't figure out the difference between plugins, skills, and MCP in Hermes Agent."

Hermes Agent Plugin vs Skill vs MCP: The Complete Guide to Knowing the Difference and When to Use Each


"I can't figure out the difference between plugins, skills, and MCP in Hermes Agent."

All three are mechanisms for "extending functionality," but their roles, use cases, and creation difficulty are completely different.

  • Plugin: custom functionality written in Python. When you want to add your own tools
  • Skill: Markdown that stores procedures. When you want to teach the AI "how to do things"
  • MCP: the standard protocol for connecting external services. When you want to call tools that already exist

In this article, based on the Hermes Agent official docs and real Discord/X community examples, we thoroughly compare the three mechanisms. You'll see clearly which to choose in which situation.

Official docs:


Bottom Line: The Difference in 3 Lines

PluginSkillMCP (Model Context Protocol)
In one sentenceAdd your own toolsTeach procedures and memorize themConnect external services
What it isPython code + plugin.yamlMarkdown fileJSON-RPC server config
Location~/.hermes/plugins/~/.hermes/skills/config.yaml mcp_servers
DifficultyHigh (Python required)Low (Markdown is enough)Medium (edit config files)
What you can doAdd tools, hooks, lifecycle handlingAuto-run procedures, iterative learningExternal APIs/GitHub/DB/browser operation

① Plugin — Custom Functionality in Python

Official Definition

"Hermes has a plugin system for adding custom tools, hooks, and integrations without modifying core code." — Hermes Agent Plugins Docs

Plugins are a mechanism for adding your own tools and processing without modifying any of Hermes Agent's core code. Written in Python.

How It Works

Plugins use this folder structure, placed in ~/.hermes/plugins/:

~/.hermes/plugins/my-plugin/
├── plugin.yaml      # manifest (name, version, etc.)
├── __init__.py      # register() — connects schemas and handlers
├── schemas.py       # tool schemas (definitions the LLM sees)
└── tools.py         # tool handlers (executed when called)

What You Can Do

FeatureDescription
Add custom toolsDefine new tools the LLM can call
HooksIntercept tool calls with `pre_tool_call` / `post_tool_call`
Slash commandsAdd custom commands in `/mycommand` form
Lifecycle handlingDescribe actions at startup, shutdown, and config changes

Real Example: Converse Mode

Converse Mode, built by Discord user @ibrandis, is a representative Plugin example.

Problem: Hermes Agent starts executing tools the moment it receives instructions. Even with a vague idea, it immediately starts writing files.

Solution: A plugin using the pre_tool_call hook that blocks tool calls until the user says "OK." Achieved with just one plugin and two commands.

What this shows about Plugins: Plugins are the mechanism for "modifying the agent's behavior itself." Use them when you want behavior not covered by core functionality, like Converse Mode.

When to Use

  • You want to add your own dedicated tools
  • You want to insert processing before/after tool calls (logging, limits, transformation)
  • You want native tools for a specific service like WordPress
  • You want to try community-shared plugins (like Converse Mode)

② Skill — Procedure Docs Taught in Markdown

Official Definition

"Memory stores facts. Skills store procedures step-by-step instructions for how to do things." — Hermes Agent FAQ

Skills are the mechanism for "memorizing procedures, whereas memory memorizes facts." They are the core of the "self-improvement loop," Hermes Agent's biggest feature.

Skill vs Memory (from the FAQ)

ComparisonMemorySkill
What it storesFacts (your name, project details, preferences)Procedures (how to do X, setup steps for Y)
How retrievedAutomatically searched by relevanceAgent selects based on the task
FormatShort textStructured Markdown procedure doc
Can you write it?Agent saves automaticallyYou can write it, and the agent auto-generates it

What You Can Do

FeatureDescription
Store proceduresSave solved problem procedures as Markdown
Auto-generationHermes Agent auto-creates skill files after solving hard problems
Self-improvementSkills get updated and refined with each use
Community sharingInstallable from the Skills Hub (88,000+ skills)
Cross-agent sharingSkills can be shared and reused between agents

Real Example: 9 AM Email Summary

From Anthony Maio (Substack blogger):

"An agent that grows with you — not marketing fluff. When it solves a hard problem, it literally auto-generates a Markdown skill file. You can write cron in natural language. 'Every business day at 9am, summarize my inbox and post it to Slack.'"

What this shows about Skills: Skills are the mechanism for "the agent learning from experience." Teach it something once, and next time it executes perfectly.

When to Use

  • You want fixed procedures run repeatedly (like monthly report generation)
  • You want to "teach" the agent new capabilities
  • You want to reuse community skills
  • You want to automate a workflow that succeeded once

③ MCP (Model Context Protocol) — The Standard Protocol for Connecting External Services

Official Definition

"MCP lets Hermes Agent connect to external tool servers so the agent can use tools that live outside Hermes itself — GitHub, databases, file systems, browser stacks, internal APIs, and more." — Hermes Agent MCP Docs

MCP is the standard protocol for connecting AI agents to external tools, proposed by Anthropic. Hermes Agent can integrate with any external service through MCP servers.

How It Works

MCP operates on a "server" and "client" relationship:

Hermes Agent (MCP client)
  ↓ MCP protocol (JSON-RPC)
MCP server (GitHub / filesystem / database / browser, etc.)

Configuration is done just by writing in config.yaml:

mcp_servers:
  filesystem:
    command: "npx"
    args: ["-y", "@modelcontextprotocol/server-filesystem", "/home/user/projects"]

What You Can Do

FeatureDescription
External tool integrationConnect GitHub / Git / filesystem / browser / DB, etc.
Automatic tool discoveryAuto-detect and register MCP server tools at startup
FilteringRestrict which tools are exposed per server
Nous-approved catalogOne-click install of curated MCP servers from Nous Research
Local + remoteSupports both stdio (local) and HTTP (remote)

Real Example: Operating Windows Chrome from WSL2

A representative MCP use case also in the FAQ:

"If you want to operate Windows Chrome while running Hermes in WSL2, using an MCP bridge is recommended over /browser connect."

With MCP, you can safely operate tools in a different environment from where Hermes Agent runs, through the standard protocol.

When to Use

  • You want the agent to operate GitHub repositories
  • You want it to query databases directly
  • You want to automate browser operations
  • You want to integrate internal APIs or custom services
  • You want to access local tools from WSL2/remote environments

Comparing the 3: Which Should You Choose?

Decision Flowchart

"I want to add or extend something"
│
├─ "Connect to an external service or tool"
│  └─ ✅ MCP (standard protocol. Just write a config file)
│
├─ "Teach the agent procedures / have it memorize"
│  └─ ✅ Skill (Markdown is fine. Also auto-generated)
│
├─ "Add tools with custom logic"
│  └─ ✅ Plugin (Python required. Highest freedom)
│
└─ "Share functionality between agents in different profiles"
   └─ ✅ Skill or MCP (both shareable)

Comparison Matrix

AxisPluginSkillMCP
Skill neededPython. Intermediate-advancedMarkdown. Beginners OKYAML config. Intermediate
Dev speedHours to daysMinutes to tens of minutesMinutes (just pick from catalog)
Freedom⭐⭐⭐⭐⭐ (highest)⭐⭐⭐ (within procedures)⭐⭐⭐⭐ (depends on server)
ReusabilityLow (local environment dependent)High (shareable on GitHub)High (standard protocol)
Agent learning target✅ (auto-generated and improved)
External service connection❌ (implement yourself)❌ (can include in procedures)✅ (best at it)
Execution interception/hooks✅ (pre_tool_call etc.)
Community assetsShared on Discord88,000+ in Skills HubNous-approved catalog + GitHub

Practical: How to Choose in Common Cases

Case 1: "I want to integrate WordPress"

A case also discussed in Grok conversations:

Options:

  1. MCP: If a WordPress MCP server exists, config alone completes the integration (easiest)
  2. Plugin: Create a Python plugin that calls the WordPress REST API (highest freedom)
  3. Skill: Write WordPress operation procedures in Markdown (supplement when MCP/Plugin isn't enough)

Recommendation: Look for an MCP server; if none exists, build a Plugin. Use Skill to supplement operation procedures.

Case 2: "I want to change the agent's behavior, like Converse Mode"

The only option: Plugin

Using the pre_tool_call hook is the answer. Skills and MCP can't change the agent's fundamental "act before thinking" behavior.

Case 3: "Generate a sales report and send it to Slack every morning"

Best solution: Skill + Cron

  1. Instruct the report generation procedure in natural language → saved as a Skill (auto-generated)
  2. Run it every morning with a Cron job
  3. If the report needs internal DB access, connect the DB with MCP

Case 4: "I want automatic GitHub PR review"

Best solution: MCP + Skill

  1. Connect GitHub with MCP
  2. Save the PR review procedure as a Skill
  3. Automatically run the Skill when a new PR arrives

Reference: Official Docs Pages

FeatureOfficial docs
Plugin overview[Plugins](https://hermes-agent.nousresearch.com/docs/user-guide/features/plugins)
How to build a plugin[Build a Hermes Plugin](https://hermes-agent.nousresearch.com/docs/developer-guide/build-a-hermes-plugin)
Built-in Plugins[Built-in Plugins](https://hermes-agent.nousresearch.com/docs/user-guide/features/built-in-plugins)
Skills System[Skills System](https://hermes-agent.nousresearch.com/docs/user-guide/features/core/skills-system)
Skills Hub[Skills Hub](https://hermes-agent.nousresearch.com/docs/skills/)
MCP[MCP (Model Context Protocol)](https://hermes-agent.nousresearch.com/docs/user-guide/features/mcp)
FAQ (Memory vs Skills)[FAQ & Troubleshooting](https://hermes-agent.nousresearch.com/docs/reference/faq)

FAQ

Q: Plugin or MCP — which should I use?

Use MCP to "connect to external services" and Plugin to "add custom logic." MCP just requires writing a config file, so if the goal is connection, MCP is easier.

Q: Are Skills created automatically?

Yes. When Hermes Agent solves a hard problem, it automatically generates a Skill file (Markdown). Users can also create them manually.

Q: Can I use all of them at once?

Yes. Plugin, Skill, and MCP are independent mechanisms, so you can use them simultaneously. For example: "Connect to a DB with MCP, process data with a Plugin, and save the whole flow as a Skill."

Q: I want to try Converse Mode. Where can I get it?

Converse Mode is a community plugin. Ask the author (@ibrandis) directly on Discord, or search GitHub for "hermes-converse-mode." Alternatively, build your own following the official plugin guide.

Q: Is there a WordPress plugin?

No official WordPress plugin exists yet. Approaches for WordPress integration:

  1. Build a Plugin that talks to the WordPress REST API
  2. Find (or build) a WordPress MCP server
  3. Call WP-CLI commands via the Tool Gateway

Q: Can I use all 88,000+ skills in the Skills Hub?

The Skills Hub aggregates skills from multiple registries. There are three types: Built-in (standard), Optional (official options), and Community. Community skills may vary in quality. Check carefully before installing.


Summary: Use the 3 According to Your Goal

Which mechanism to choose for Hermes Agent extensions is determined by "what you want to do."

  • Connect to external services → MCP (easiest)
  • Teach procedures → Skill (Markdown only)
  • Build your own tools → Plugin (Python required, but most powerful)

Combine these three and there's almost nothing you can't do with Hermes Agent. Start with the easiest, MCP, then move to Plugin as needed.

Official docs (user stories): hermes-agent.nousresearch.com/docs/user-stories


Recommended Reading