Hermes MCP Server
Provides tools for searching, retrieving, and managing internal Hermes documents (HashiCorp PRDs, RFCs, specs, memos), including relevance search, document metadata, full document content, and related resources.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Hermes MCP Serversearch for recent PRDs about authentication"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
hermes-mcp
An MCP server that turns internal Hermes documents (HashiCorp PRDs, RFCs, specs, memos) into agent tools — relevance search, document metadata, related resources, and full document bodies — plus a companion skill that makes your agent cross-check specs against the code in your editor.
Tools
hermes_search · hermes_get_document · hermes_get_document_content · hermes_get_related_resources · hermes_recently_viewed_docs · hermes_check_auth · hermes_login · hermes_sharepoint_login
Related MCP server: Documentation Fetcher & RAG Search
Requirements
Node.js 18+ (developed on 26)
Google Chrome (for the sign-in / browser-content helpers)
An MCP-capable agent (bob, Claude Desktop, VS Code, …)
Quick start
git clone https://github.com/yummydirtx/hermes-mcp.git
cd hermes-mcp
node install.jsThe installer:
runs
npm install,copies the hermes skill into
~/.bob/skills/hermes/,adds a hermes server to
~/.bob/settings/mcp.json(existing servers/secrets are preserved).
Then authenticate and reload your agent (below).
Claude Desktop or VS Code instead of bob? Run
node install.js --claude, or copy a snippet fromexamples/.
Authenticate to Hermes
Hermes sits behind SSO. Capture your session one of two ways:
Automatic (recommended):
npm run attachA normal Chrome opens — sign in. Your session cookie is written to
.hermes-cookieand hot-reloaded by the server. Keep that window open (it's also used for reading document bodies).Manual: in a logged-in Hermes tab, DevTools → Network → click a request → copy the
Cookie:request header into.hermes-cookie:# macOS pbpaste > .hermes-cookie # Windows (PowerShell) Get-Clipboard | Set-Content -NoNewline .hermes-cookie
Verify with the hermes_check_auth tool.
Reading full document bodies
Bodies live in SharePoint. hermes_get_document_content tries, in order (source: "auto"):
Search index — the body Hermes already indexed. No extra permissions. Often enough.
Your browser session (
source: "browser") — reads the file through the Chrome you signed into (npm run attach), over the DevTools protocol. No Microsoft Graph, no admin, no extra scopes — just the access you already have. Keep the document open in that Chrome.Microsoft Graph (
source: "sharepoint", viahermes_sharepoint_login) — needsFiles.Read.All/Sites.Read.All. The built-in client can't obtain these in a locked-down tenant; use a dedicated Azure AD app (below).
Test the browser path directly:
npm run sp-browser "<sharepoint-document-url>"Optional: dedicated Azure AD app (for the Graph path)
Azure Portal → App registrations → New registration → Redirect URI = Public client/native http://localhost → API permissions → Microsoft Graph → Delegated: Files.Read.All, Sites.Read.All, offline_access → Grant admin consent. Then set SP_CLIENT_ID and SP_TENANT_ID in the server env and run hermes_sharepoint_login.
Manual setup (no installer)
Add this to your agent's MCP config, fixing the path (see examples/ for bob / Claude / VS Code variants):
{
"mcpServers": {
"hermes": {
"command": "node",
"args": ["/ABSOLUTE/PATH/TO/hermes-mcp/hermes-mcp.js"],
"env": {
"HERMES_BASE_URL": "https://hermes-sharepoint.hashicorp.services",
"HERMES_COOKIE_FILE": "/ABSOLUTE/PATH/TO/hermes-mcp/.hermes-cookie"
}
}
}
}Then copy skills/hermes/SKILL.md into your agent's skills folder.
Windows notes
Use PowerShell;
node install.jsworks the same.npm run attachlaunches your installed Chrome/Edge. If it isn't found, setHERMES_CHROMEto the browser's.exe.Absolute paths in
argsuse backslashes — the installer writes them correctly; if editing by hand use\\or forward slashes.
Configuration (env)
Var | Default | Purpose |
|
| Hermes host |
|
| Session cookie (hot-reloaded) |
|
| Debug-Chrome port for |
| auto-detect | Path to Chrome/Edge executable |
| – | Dedicated Azure AD app for the Graph path |
|
| Optional pasted Graph token |
Scripts
npm start— run the server (stdio)npm run attach— capture the Hermes session from a real Chromenpm run sp-browser "<url>"— read a document via your browser sessionnode install.js— set up + register with your agent
Security
Never commit .hermes-cookie, .sharepoint-*, or the browser profiles — they hold your live session. .gitignore already excludes them.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/darrenzwchan/hermes-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server