# Hermes Agent + ViralNote: MCP Setup Guide

**TL;DR:** Add ViralNote to [Hermes Agent](https://hermes-agent.ai) via `mcp_servers` in `~/.hermes/config.yaml` — HTTP URL `https://dashboard.viralnote.app/api/mcp/mcp` with `x-api-key: vnd_...`, or stdio via `@viralnote/mcp-server`. Restart Hermes to load 15 scheduling tools.

Hermes is Nous Research’s autonomous agent runtime with first-class MCP client support (stdio + HTTP). ViralNote fits the same pattern as Linear or GitHub MCP servers: configure once, tools appear in the agent’s tool list.

## HTTP MCP (recommended)

Edit `~/.hermes/config.yaml`:

```yaml
mcp_servers:
  viralnote:
    url: https://dashboard.viralnote.app/api/mcp/mcp
    headers:
      x-api-key: vnd_...
```

Get `vnd_...` from [dashboard.viralnote.app/developers/auth](https://dashboard.viralnote.app/developers/auth).

Restart your Hermes session. Ask: **“What MCP tools do you have for ViralNote?”** or run `/tools`.

## Stdio via npm

```yaml
mcp_servers:
  viralnote:
    command: npx
    args: ["-y", "@viralnote/mcp-server"]
    env:
      VIRALNOTE_API_KEY: vnd_...
```

Hermes passes only safe env vars to subprocesses — put the key in the `env` block as shown.

## Tool filtering (optional)

Hermes supports per-server tool allowlists. For a read-only monitor agent:

```yaml
mcp_servers:
  viralnote:
    url: https://dashboard.viralnote.app/api/mcp/mcp
    headers:
      x-api-key: vnd_...
    tools:
      include:
        - list_posts
        - list_analytics
        - list_post_results
        - list_social_accounts
```

Mutating tools (`create_post`, `publish_post`, `delete_post`) stay excluded until you widen the list.

## Example Hermes workflows

**Content ops assistant:**

> List my scheduled posts for the next 7 days. Flag any day with fewer than 2 posts on TikTok.

**Research + schedule:**

> Import this image URL into my library, then draft a scheduled LinkedIn post for tomorrow 9am with a professional caption about [topic].

Patterns from [three agent workflows](/blog/three-agent-workflows-social-media-scheduling) apply directly.

## Hermes curated catalog (optional)

Hermes maintains a small Nous-approved MCP catalog in [optional-mcps/](https://github.com/NousResearch/hermes-agent/tree/main/optional-mcps). ViralNote isn’t listed there yet — manual `config.yaml` is the supported path today. Catalog PR is optional distribution, not required to connect.

## Hermes as MCP server (reverse direction)

Hermes can also **expose** its own messaging tools via `hermes mcp serve` — that’s separate from consuming ViralNote. You’re using Hermes as the **client**; ViralNote is the **tool server**.

## Docs & links

- [Hermes MCP documentation](https://nousresearch-hermes-agent.mintlify.app/user-guide/features/mcp)
- [Hermes section on our agents page](https://www.viralnote.app/agents#hermes)
- [MCP server overview](/blog/mcp-server-social-media-schedule-claude-cursor)

## Security

- Scoped API key per Hermes environment
- Confirm before any `publish_post` in prompts
- Revoke keys when rotating Hermes hosts

Hermes reasons; ViralNote posts. Configure narrowly, expand tools as trust grows.

## FAQ

**Does Hermes Agent support ViralNote?**

Yes. Add viralnote under mcp_servers in ~/.hermes/config.yaml with the HTTP URL dashboard.viralnote.app/api/mcp/mcp and x-api-key header, or stdio via npx @viralnote/mcp-server.

**Where is Hermes MCP config stored?**

Hermes reads MCP servers from ~/.hermes/config.yaml under the mcp_servers key. Restart the session after edits.

**Can I limit which ViralNote tools Hermes sees?**

Yes. Hermes supports per-server tools.include allowlists — useful for read-only analytics monitors without create_post or publish_post.


---

Site index for agents: https://www.viralnote.app/llms.txt · Structured view: https://www.viralnote.app/agent.json · API: https://www.viralnote.app/openapi.json · Auth: https://www.viralnote.app/auth.md
