Hermes
Give Nous Research's Hermes agent a memory that outlives the chat.
Install
- Open ~/.hermes/config.yaml - create the file if it isn't there yet.
- Add the block below, replacing the placeholder with your own memory link. Keep the /m/ link exactly as it is: no .md on the end - that suffix returns these instructions instead of the memory server.
- Start Hermes ("hermes chat") and ask it what tools it has - it should list mcp__recall_select__store_memory, mcp__recall_select__recall_memory and mcp__recall_select__delete_memory.
Hermes is configured in YAML, not JSON. Add this block to ~/.hermes/config.yaml - if the file already has an mcp_servers section, add the recall-select entry under it rather than a second mcp_servers line.
mcp_servers:
recall-select:
url: "https://recall.select/m/YOUR-MEMORY-KEY"
Keep the key out of the URL
Putting the key in the URL is the simplest setup, but it can end up in logs or proxies. To avoid that, point your client at the key-less endpoint and send the link in a header instead.
mcp_servers:
recall-select:
url: "https://recall.select/mcp"
headers:
Authorization: "Bearer YOUR-MEMORY-KEY"
Using it
Hermes can now keep what matters between sessions: it saves what you ask it to remember and finds it later by meaning, so tomorrow's chat starts already knowing what today's decided. Hermes prefixes the tools it borrows from a server, so recall.select's store_memory shows up as mcp__recall_select__store_memory - same tool, longer name (the hyphen in the server name becomes an underscore in the prefix).
Tips
- No API key or token is needed on top of the link - the memory link already carries the credential.
- Prefer the terminal? "hermes mcp add recall-select --url <your-link>" writes the same entry for you.
- To keep the secret out of config.yaml entirely, run "hermes mcp add recall-select --url https://recall.select/mcp --auth header" and paste your link when prompted: Hermes stores it in the profile's .env as MCP_RECALL_SELECT_API_KEY and writes only "Authorization: Bearer ${MCP_RECALL_SELECT_API_KEY}" into config.yaml. Any ${VARIABLE} in a header is expanded the same way if you'd rather write it by hand.
- config.yaml holds the whole password. Keep the file to yourself (chmod 600) and out of any repo you push.