This release is a pre-release and may not be stable for production use.
hermes-prime MCP server
Native Claude Code surface for hermes-prime. Exposes the session-priming
conventions as MCP tools so a fresh session can call get_conventions once
at the top instead of relying on CLAUDE.md injection.
Pure stdlib. No third-party runtime dependencies.
mcp-name: io.github.hermes-labs-ai/hermes-prime
Tools
get_conventions(scope_class?)— returns the CLAUDE-fragment as raw markdown. Optionalscope_classreturnsfragments/<scope_class>.mdif it exists, else falls back to the default fragment.list_scopes— enumerates available scoped fragments.
Install from PyPI (packaged console script)
Once published (see Packaging status below), the server installs as a standalone console script with no repo checkout required:
pip install hermes-prime-mcp
hermes-prime-mcp # speaks MCP JSON-RPC over stdio
or run it without installing, via uvx:
uvx --from hermes-prime-mcp hermes-prime-mcp
Register the installed script directly with Claude Code:
claude mcp add --scope local hermes-prime -- hermes-prime-mcp
The packaged server reads the versioned convention card bundled in its wheel.
Set HERMES_PRIME_FRAGMENT_ROOT=/path/to/your/project only when you want it
to read a trusted custom CLAUDE-fragment.md instead (see
Configuration).
Register in Claude Code (from a repo checkout)
Run from the repository root. Local scope loads the command for your sessions in the current project:
claude mcp add --scope local hermes-prime -- python3 "$PWD/mcp-server/hermes_prime_mcp.py"
For a private command available to your sessions across projects, use user scope:
claude mcp add --scope user hermes-prime -- python3 "$PWD/mcp-server/hermes_prime_mcp.py"
Use claude mcp get hermes-prime or claude mcp list to verify registration;
both should report the server as Connected (verified with Claude Code 2.1.268
on 2026-09-11). The tools appear in sessions covered by the selected scope,
and the server's initialize instructions tell the session to call
get_conventions once before recursive or emergent work.
Verify it works
printf '%s\n%s\n' \
'{"jsonrpc":"2.0","id":1,"method":"initialize","params":{}}' \
'{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"get_conventions","arguments":{}}}' \
| python3 "$PWD/mcp-server/hermes_prime_mcp.py"
Two JSON-RPC responses; second one contains the fragment markdown.
Uninstall
claude mcp remove hermes-prime
Remove it from the same project/scope in which it was registered.
Configuration
HERMES_PRIME_FRAGMENT_ROOT overrides the directory containing the default
CLAUDE-fragment.md. In a repository checkout the default is the repository
root; in a packaged install it is the immutable card bundled with the wheel.
Scoped fragments are bundled at
mcp-server/fragments/<scope_class>.md in a checkout.
Tests
python3 -m pytest mcp-server/test_hermes_prime_mcp.py -v
13 tests, stdlib-only (subprocess + json), no mcp SDK dependency.
Packaging status
pyproject.toml(repo root) builds an sdist/wheel namedhermes-prime-mcpexposing thehermes-prime-mcpconsole script viapython -m build.server.json(repo root) is the MCP Registry manifest, matching the registry's2025-12-11server.schema.json.- Before publishing, run
mcp-publisher validate server.json; this verifies the live Registry contract without creating a listing. - The package version declared by
server.jsonis published to PyPI before Registry dispatch. The Registry listing is submitted only through the manually dispatched Publish MCP Registry listing GitHub Actions workflow. It checks the selectedserver.jsonversion and its live PyPI artifact, validates the manifest, then uses short-lived GitHub Actions OIDC—no stored Registry token.
Release files for hermes-prime-mcp 0.2.1a2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| hermes_prime_mcp-0.2.1a2.tar.gz | 18.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| hermes_prime_mcp-0.2.1a2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 31.1 kB
Release files / hermes_prime_mcp-0.2.1a2.tar.gz
| Download URL | hermes_prime_mcp-0.2.1a2.tar.gz |
|---|---|
| Size | 18.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5207681faa2bc8c922243635408a4eeed560520705e514b76dbacca67d1ba2d2
|
|
BLAKE2b-256 checksum How to use checksums |
813e344c11711311cace91ce15d86afb59653da8d76212b2d7d067637f2802d8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / hermes_prime_mcp-0.2.1a2-py3-none-any.whl
| Download URL | hermes_prime_mcp-0.2.1a2-py3-none-any.whl |
|---|---|
| Size | 12.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d7421e64e176092798bbf37f9cab4431d339b4e5d8c9857ab7aef3c063e1da58
|
|
BLAKE2b-256 checksum How to use checksums |
0892ddca492b6ac260357f5aed53d89dfb36071b71eed278b73a0a757efdd793
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|