> ## Documentation Index
> Fetch the complete documentation index at: https://help.slashy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Hermes Setup

> Add Slashy MCP to Hermes Agent by editing ~/.hermes/config.yaml and logging in once.

[Hermes Agent](https://hermes-agent.nousresearch.com) (Nous Research) reads MCP servers from `~/.hermes/config.yaml`. Slashy is a remote HTTP server with OAuth, so the entry is two lines - then one login command.

## Prerequisites

* A **Slashy account** signed in with Google. [Sign up at slashy.com](https://slashy.com) if you haven't.
* Hermes Agent installed, with MCP support (bundled with the standard install).
* A browser available for the one-time OAuth login.

## Setup

<Steps>
  <Step title="Open the Hermes config file">
    In your terminal:

    ```bash theme={null}
    nano ~/.hermes/config.yaml
    ```

    <Frame>
      <img src="https://mintcdn.com/karvixinc/KDP1HjgRwm_fuG8c/images/mcp/hermes-edit-config.png?fit=max&auto=format&n=KDP1HjgRwm_fuG8c&q=85&s=62f74584f0a98ee5751ead277c060a5d" alt="Terminal editing ~/.hermes/config.yaml" style={{width: "100%", maxWidth: "800px", margin: "0 auto"}} width="2400" height="540" data-path="images/mcp/hermes-edit-config.png" />
    </Frame>
  </Step>

  <Step title="Add the Slashy server">
    Add Slashy under the top-level `mcp_servers:` key (create the key if it isn't there yet):

    ```yaml theme={null}
    mcp_servers:
      slashy:
        url: "https://slashy.ctrlcenter.ai/mcp"
        auth: oauth
    ```

    Save and exit.

    <Tip>Prefer one command? `hermes mcp add slashy --url https://slashy.ctrlcenter.ai/mcp --auth oauth` writes the same entry for you.</Tip>

    <Frame>
      <img src="https://mintcdn.com/karvixinc/KDP1HjgRwm_fuG8c/images/mcp/hermes-config.png?fit=max&auto=format&n=KDP1HjgRwm_fuG8c&q=85&s=ebcec2f17d8ae99f9e8abdd63ff098da" alt="Hermes config.yaml with the Slashy mcp_servers block" style={{width: "100%", maxWidth: "800px", margin: "0 auto"}} width="2400" height="650" data-path="images/mcp/hermes-config.png" />
    </Frame>

    <Warning>
      The key is top-level `mcp_servers:` - not `mcp:` with a nested `servers:`. Hermes ignores entries written under the wrong key, and the server simply never appears.
    </Warning>
  </Step>

  <Step title="Log in from a fresh terminal">
    Run:

    ```bash theme={null}
    hermes mcp login slashy
    ```

    Hermes prints an authorize URL and opens your browser to the Slashy login page. Sign in with Google and click **Allow**.

    <Frame>
      <img src="https://mintcdn.com/karvixinc/KDP1HjgRwm_fuG8c/images/mcp/hermes-oauth.png?fit=max&auto=format&n=KDP1HjgRwm_fuG8c&q=85&s=a1a43a88ae3fc3322bf43c5b87b9e011" alt="hermes mcp login slashy printing the authorize URL and confirming authentication" style={{width: "100%", maxWidth: "800px", margin: "0 auto"}} width="2400" height="660" data-path="images/mcp/hermes-oauth.png" />
    </Frame>

    <Note>
      Run this from a **new** terminal, not from inside a running Hermes session. Editing `config.yaml` mid-session triggers an auto-reload with a 30-second timeout - too short to finish an interactive OAuth flow. `hermes mcp login` waits the full five minutes.
    </Note>

    Running Hermes on a remote host or over SSH? The browser redirect can't reach a loopback port on another machine. Hermes prints an *"Or paste the redirect URL here…"* prompt - approve in your browser, copy the full URL it lands on (the connection error is expected), and paste it back.
  </Step>

  <Step title="Verify the connection">
    Test the server, then reload it into your session:

    ```bash theme={null}
    hermes mcp test slashy
    ```

    ```text theme={null}
    /reload-mcp
    ```

    Ask Hermes *"Tell me which MCP-backed tools are available right now."* - inside the agent the Slashy tools are namespaced as `mcp_slashy_<tool_name>`, for example `mcp_slashy_list_messages` and `mcp_slashy_draft_email`. (`hermes mcp test` lists them under their bare server-side names.)

    <Frame>
      <img src="https://mintcdn.com/karvixinc/KDP1HjgRwm_fuG8c/images/mcp/hermes-verify.png?fit=max&auto=format&n=KDP1HjgRwm_fuG8c&q=85&s=eba01c470aa5519383782f9a1201c78f" alt="hermes mcp test slashy reporting Connected, tools discovered, and the discovered tool list" style={{width: "100%", maxWidth: "800px", margin: "0 auto"}} width="2400" height="690" data-path="images/mcp/hermes-verify.png" />
    </Frame>
  </Step>
</Steps>

## What happens after setup

Hermes caches the OAuth token at `~/.hermes/mcp-tokens/slashy.json` with `0600` permissions and reuses it silently until a refresh fails. Your config file holds only the URL - never a secret. To re-authenticate later (new Slashy account, revoked access), run `hermes mcp login slashy` again.

## Limiting which tools Hermes sees

Slashy exposes a large toolset. To narrow it - for example, a read-only setup that can triage but never send - use an allowlist:

```yaml theme={null}
mcp_servers:
  slashy:
    url: "https://slashy.ctrlcenter.ai/mcp"
    auth: oauth
    tools:
      include:
        - list_messages
        - read_thread
        - list_calendar_events
        - prep_meeting
        - research_contact
```

Run `/reload-mcp` after editing. Use `exclude:` instead if you want everything except a few tools.

## Next steps

<CardGroup cols={2}>
  <Card title="Using Slashy MCP" icon="play" href="/how-to-guides/slashy-mcp-using">
    Email prompts for triage, drafting, follow-ups, and scheduling.
  </Card>

  <Card title="Slashy skill setup" icon="sparkles" href="/how-to-guides/slashy-mcp-skills">
    Install a skill so Hermes reaches for Slashy without being told.
  </Card>

  <Card title="Troubleshooting" icon="wrench" href="/how-to-guides/slashy-mcp-troubleshooting">
    Fixes for OAuth, missing tools, and wrong accounts.
  </Card>

  <Card title="Slashy MCP overview" icon="book" href="/how-to-guides/slashy-mcp-overview">
    What Slashy MCP is and how it works.
  </Card>
</CardGroup>
