v11.4.0
Special Thanks to filhocf for contributing both features in this release.
[11.4.0] - 2026-07-04
MINOR release: memory merge action, pluggable domain NER extractors, mcpmemory.services landing page.
Added
-
feat(consolidate):
mergeaction for thememory_consolidatetool (PR #105, closes #100, @filhocf). Merges N source memories into a single memory with store-first/delete-after ordering and per-delete result checking. When not explicitly provided,tagsdefault to the sorted union of all source tags andmemory_typeis inherited from the first source. The responseokflag is true only when every source deletion succeeded (len(failed) == 0), so partial failures are reported correctly. 11 tests including failure paths. -
feat(ner): pluggable domain-specific entity extractors (PR #107, closes #54, @filhocf). New
DomainExtractorprotocol inreasoning/entities.py; register implementations via theMCP_ENTITY_EXTRACTOR_MODULESenv var (module.path:ClassName, comma-separated). Extractors are lazily loaded once and cached, failures are isolated per extractor (built-in extraction never breaks), and domain entities are deduplicated against built-in ones. Wired into the graph handler, the quality maintain cycle, and the memory store path. Seedocs/DOMAIN_EXTRACTORS.md. -
feat(site): mcpmemory.services landing page (PR #106). Galaxy hero video rendered from 3,134 connected memories, blog tutorial, and an in-browser semantic memory demo running entirely client-side (sqlite-vec WASM + transformers.js embeddings).
-
feat(demo): AI Tinkerers Zurich demo scripts (local-agent, concurrency, standalone).