mcp-servers

Configure and troubleshoot MCP servers in Hermes with stdio and HTTP transports.

Updated Jul 10, 2026
One-click install
npx skills add https://github.com/timchap/dot-hermes --skill mcp-servers-timchap
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: mcp-servers
Source: https://github.com/timchap/dot-hermes/tree/main/skills/devops/mcp-servers
Command: npx skills add https://github.com/timchap/dot-hermes --skill mcp-servers-timchap

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires mcp, and includes references (resource) components.

What problem does it solve? Setting up Model Context Protocol servers involves tricky configuration details — transport selection, credential injection, environment variable filtering, and auth failures that surface as cryptic 401s. This Skill provides the exact config patterns, CLI commands, and diagnostic workflows to get MCP servers running in Hermes and debug them when they fail. ## Core Features & Use Cases - Server Configuration: Add stdio and HTTP MCP servers to ~/.hermes/config.yaml via CLI or direct editing, with correct tool naming (mcp_{server}_{tool}) and timeout settings. - Secret Injection: Inject 1Password secrets into MCP headers using ${VAR} shell-style substitution via secrets.onepassword.env, avoiding hardcoded credentials. - Auth & Connectivity Debugging: Diagnose 401/405/timeout failures with curl-based JSON-RPC probes, distinguish proxy health from upstream OAuth failures, and detect empty-argument tool calls that silently no-op. - Use Case: You add a Gmail MCP proxy and hermes mcp test passes but every tool call returns 401. This Skill walks you through checking op CLI authentication, verifying ${VAR} resolution, and testing the endpoint directly with curl to isolate the failure layer. ## Quick Start Ask the agent to add an HTTP MCP server to Hermes config with a Bearer token injected from 1Password and verify the connection works.

Frequently Asked Questions about mcp-servers

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add an MCP server to Hermes config?▼

Add entries under the `mcp_servers` key in `~/.hermes/config.yaml`, or use `hermes mcp add NAME --url URL` for HTTP servers and `--command CMD` for stdio servers. Hermes blocks direct file edits to config.yaml, so use the CLI or `hermes config edit`.

How do I inject 1Password secrets into MCP server headers?▼

Use shell-style `${VAR}` syntax in header values and define the variable under `secrets.onepassword.env` with an `op://vault/item/field` reference. Hermes resolves the placeholder at connection time, keeping secrets out of the config file.

Why does my MCP server return 401 even though the connection test passes?▼

The `hermes mcp test` command only probes the unauthenticated `/health` endpoint, while actual MCP calls require the Authorization header. If the `op` CLI has no accounts configured, `${VAR}` resolves to empty and every JSON-RPC request fails with 401.

Does Hermes support both stdio and HTTP MCP transports?▼

Yes, Hermes supports stdio (local subprocess via `command`/`args`/`env`), HTTP, and StreamableHTTP transports (via `url`/`headers`). A server config must have either `command` or `url`, not both, and the `mcp` Python package must be installed.

Why is my MCP tool call succeeding but not changing anything?▼

Object-typed parameters with empty JSON schemas can validate as `{}`, so the client may send an empty body that returns success without applying changes. Test the endpoint directly with curl using a populated body to isolate whether the bug is in your arguments or the server.

What environment variables are passed to stdio MCP servers?▼

Hermes filters the subprocess environment, passing only `PATH`, `HOME`, `USER`, `LANG`, `LC_ALL`, `TERM`, `SHELL`, `TMPDIR`, and `XDG_*` variables. All other variables, including secrets, must be explicitly declared via the `env` config key.