Plur logo

Plur

Local-first memory for AI agents with searchable, editable engrams shared through MCP.

Install Plur

Pick your client, then add it in one click or paste the config.

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "plur": {
      "command": "uvx",
      "args": [
        "plur-hermes"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

We couldn’t confirm it starts correctly

We ran the install command but it didn't respond within our test window — this can mean a slow first-time install rather than a real problem.

uvx plur-hermes

Process exited before answering initialize.

This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked 9d ago.

Overview

The plur MCP server gives AI agents persistent local memory stored as inspectable engrams on disk. It exposes tools to learn, recall, inject, rate, correct, retire, rescope, and synchronize memories, with hybrid BM25 and embedding search by default. Use it when agents need knowledge to persist across sessions, projects, tools, or machines without relying on a hosted memory service. Node.js 20 or newer is required, and search can fall back to keyword matching when the local model is unavailable.

Use cases

  • Store coding preferences across agent sessions
  • Recall project conventions while working in an editor
  • Separate personal, project, and team knowledge
  • Synchronize shared engrams through Git
  • Review and retire outdated agent memories

Key features

  • Local plain-text engram storage
  • Hybrid BM25 and embedding retrieval
  • Scoped personal, project, and team memory
  • Batch learning with deduplication
  • Git-based memory synchronization
  • Timeline, feedback, and retrieval receipts

Tools15

What Plur lets your agent do. Expand a tool for its parameters.

Self-reported~279 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

8/8 checks healthy over the last 46d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 13d ago via OSV.dev · plur-hermes (PyPI)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars308Stargazers on the source repository.
Last commit1d agoMost recent push to the default branch.
Install checkInconclusiveDidn't respond in our test window — often a slow first install.
Tools exposed15Callable tools this server registers over MCP.
Directory activity3 viewsConfig copies, upvotes, and views on AllMCPs.

How Plur works

What plur MCP server does

The plur MCP server provides persistent memory for AI agents through plain-text engrams stored locally. Agents can save corrections, preferences, conventions, incidents, resolutions, and session milestones, then retrieve that information in later sessions. Memories can be read, rated, corrected through replacement or rescoping workflows, retired, and eventually pruned as activation decays.

The memory model supports personal, project, global, and team-oriented scopes. A session can change its default write scope, while individual learning calls can assign scope based on the content being stored. This makes the tool suitable for separating personal preferences from project details and shared team knowledge.

How it works

The plur MCP server searches memories with a hybrid strategy combining BM25 keyword retrieval and embeddings. Keyword-only mode is available, and the system falls back to keyword search when the local search model is missing or unavailable. The model download is local and occurs during setup when downloads are allowed; no cloud call is required for the local search path.

For task-specific context, plur_inject_hybrid selects engrams within a token budget. plur_feedback records relevance ratings, while plur_receipt reports what memory was retrieved. plur_capture, plur_timeline, and plur_ingest support event recording, historical queries, and extracting engrams from text.

Synchronization uses Git remotes. Personal remotes mirror everything and should use a private repository. Shared remotes receive shared-scope, non-private engrams. Team writes can be queued when the team store is unreachable and inspected or retried with plur_outbox.

Setup and configuration

Install Node.js 20 or newer, then install the CLI and MCP packages globally:

Terminal
npm install -g @plur-ai/cli@latest @plur-ai/mcp@latest
plur init
plur doctor

plur init creates the local store and configures supported clients. plur doctor checks the configuration and MCP handshake and can download the search model when permitted. Restart the editor after installation or upgrades.

Client setup documented in the source includes Claude Code, Cursor, and Codex. Claude Code uses a user-scoped registration and global hooks. Cursor can be configured with plur init --cursor, while Codex uses plur init --codex; Codex users must manually trust the installed hooks through /hooks before memory loads.

Tools and capabilities

The plur MCP server exposes tools for:

  • Learning one or many memories, with batch deduplication and per-item failure isolation.
  • Recalling relevant memories by hybrid or keyword search.
  • Injecting task context within a token budget.
  • Rating relevance, retiring memories, changing scopes, and changing session defaults.
  • Capturing events, querying timelines, and extracting memories from text.
  • Synchronizing through Git and inspecting queued team writes.
  • Checking health, counts, and retrieval receipts.

Limitations and notes

Search quality and latency depend on the selected retrieval configuration. The default hybrid path requires a one-time local model download; without that model, keyword search remains available. An optional reranker is documented for higher-quality retrieval but has substantially higher CPU latency than the faster local options.

Scope selection matters: omitting a team-relevant scope can leave knowledge global rather than shared with the intended team store. Shared synchronization also excludes private engrams. The source describes OpenCode, Hermes, and OpenClaw as supported ecosystem clients, but this listing uses only the client identifiers available in its compatibility schema.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Plur

plur is an MCP server that connects AI agents to a local, persistent engram store. Its main tools let agents learn and batch-store memories, recall or inject relevant context, provide feedback, forget or rescope entries, capture events, query timelines, ingest text, and sync selected memories through Git.

Install Node.js 20 or newer, then run `npm install -g @plur-ai/cli@latest @plur-ai/mcp@latest`, followed by `plur init` and `plur doctor`. Restart the editor after setup so it launches the configured MCP server.

Yes, plur supports Cursor through `plur init --cursor`. The command writes Cursor MCP, hook, and rule configuration, and Cursor uses a reduced tool profile with additional operations available through `plur_admin`.

plur searches locally with hybrid BM25 and embedding retrieval by default. It can use keyword-only mode, and it falls back to keyword search when the embedding model is unavailable or when hybrid search is disabled.

plur syncs memories through Git remotes using `plur_sync`. Personal remotes mirror everything and should be private, while shared remotes receive only shared-scope, non-private engrams.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewPlur AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/plur?style=directory)](https://allmcps.com/mcp/plur)
HTML Embed
<a href="https://allmcps.com/mcp/plur"><img src="https://allmcps.com/api/badge/plur?style=directory" alt="Plur on AllMCPs" /></a>