Releases: mlennie/hermes-mcp
Releases · mlennie/hermes-mcp
v0.4.0
Added
hermes_reset()tool. Clears every job from the in-memoryJobStore
in one call, returning JSON like{"cleared": 4, "by_status": {"running": 1, "pending": 3}}.
Same caveat ashermes_cancel: does NOT stop in-flight worker threads
or gateway calls — workers whose jobs are wiped run to completion and
no-op when theirmark_completed/mark_failedfinds an unknown id.
The tool description warns the LLM that the job store is shared across
all MCP callers (multiple Claude sessions, background Hermes-agent
workflows), so reset is a global operation that should be confirmed
with the user when other work might be in flight.JobStore.reset_all() -> tuple[int, dict[JobStatus, int]]helper backing
the tool. Reaps expired terminal jobs before counting so the returned
by_statusreflects only jobs that were actually live in the store at
call time. Typed against the existingJobStatusliteral for stronger
static checks.- Multi-client groundwork. Removed the hardcoded Claude-only
assumptions from the OAuth flow and tool descriptions. Any MCP client
that speaks Streamable HTTP + OAuth 2.1 and supports pasting in a
staticclient_id/client_secretcan now connect. Today that's
still primarily Claude Desktop / Claude.ai. Codex CLI was tested and
found to require Dynamic Client Registration (which we currently
disable); Cursor / Continue likely have the same requirement. DCR
support is tracked as a follow-up so those clients can join — see the
Client compatibility section of the README for the current matrix. OAUTH_ALLOWED_REDIRECT_SCHEMESenv var. Comma-separated list of
OAuth redirect-URI custom schemes to accept (default:
claude,claudeai,cursor).httpsandhttp-on-localhost are always
allowed as a security baseline. Lets operators extend the allowlist
for new clients (e.g.vscodefor Continue) without code changes.
Changed
- Tool descriptions for
hermes_ask/hermes_check/hermes_cancel/
hermes_resetare now client-neutral. No longer hardcode "Claude" as
the consumer; async-mode timeout guidance now notes that enforcement
varies by client (Claude.ai is ~2 min; Codex CLI, Cursor, others
differ). All async/sync decision heuristics remain unchanged. - README, CLAUDE.md,
.env.example, and source-file docstrings reframed
around generic MCP clients. The README's Client compatibility section
is honest about the current matrix: Claude is the only client tested
end-to-end; Codex CLI is confirmed incompatible until DCR support
lands; Cursor and Continue are likely in the same boat. hermes-mcp mint-clientoutput now points at any MCP client's config
format, not just Claude Desktop's Custom Connector UI.