mcpmem-runtime 1.0.2

Feature-gated runtime role composition for the mcpmem MCP server.
Documentation

mcpmem-runtime

The runtime role composition of mcpmem, an MCP server that gives LLM agents persistent memory.

This crate is a library. It parses the role selection, checks it against the compiled Cargo features, and supervises one task per role. Install the server crate instead if you want to run the server:

cargo install mcpmem

Roles

One process runs the server, a worker, or any compiled combination. The user selects roles with the --role flag, which takes a comma-separated list. The default is mcp alone, so an existing invocation keeps its behaviour.

Role Cargo feature What it does
mcp always compiled The stdio or HTTP MCP transport
indexer indexer Polls the durable index-job queue every 250 ms and refreshes the vector snapshot
webhooks webhooks Polls the delivery outbox every 250 ms
mcpmem                                 # the mcp role alone
mcpmem --role mcp,indexer              # server and embedding worker in one process
mcpmem --role indexer                  # a worker-only process

A wrong selection fails at startup

The parser refuses the four cases below. None of them is a silent no-op:

  • a role whose Cargo feature is absent — runtime role 'indexer' was selected but its Cargo feature is not compiled;
  • a repeated role — runtime role 'mcp' was selected more than once;
  • an empty list — at least one runtime role is required;
  • an unknown name — unknown runtime role '<name>'.

Supervision

RuntimeComposition starts one supervised task per role, in the order the user gave. The process stops when the first role returns or fails, so a dead worker does not leave a half-running server.

Documentation

The full server documentation is in the workspace README. The release notes are in CHANGES.md.

License

Apache-2.0. See LICENSE and NOTICE, which records the derivation from corporatepiyush/mcp-memory 5.2.1.