Agent Plugins Marketplace
All plugins

m3

v2026.9.13.0

Give Claude Code a private memory that lives on your own machine — it remembers across sessions, works fully offline, and never touches the cloud. 100+ MCP tools: fast hybrid search, automatic chat capture, contradiction tracking, and one-command GDPR export/delete.

Claude Code1 Skill1 MCP serverstdio

By skynetcmdLicense: Apache-2.024 GitHub starsUpdated last week

Directory evidence

Runtimes
Claude Code
Parsed components
2 skill or MCP entries
Source updated
Sep 13, 2026
Manifest status
Canonical path parsed

The directory validates manifest shape and source location. It does not execute the plugin or provide a security endorsement. Review the indexing methodology

Install m3 for Claude Code

Installs for the current user
claude plugin marketplace add IchenDEV/agent-plugin-mkt
claude plugin marketplace update agent-plugin-marketplace
claude plugin install m3@agent-plugin-marketplace

Paste and run these commands in a terminal with Claude Code. They add and refresh the PluginsMP catalog, then install this plugin.

The installer fetches third-party code from the source repository shown on this page. This directory validates manifest structure and source location, but does not perform a security audit; review the manifest, components, and source before installing.

Get the source manually
git clone https://github.com/skynetcmd/m3-memory

Clone the source repository, then follow its setup instructions to add the plugin to a compatible client. The repository root is the plugin root.

Plugin files

m3/
├── .claude-plugin/plugin.json
├── skills/m3-guide/SKILL.md
└── .mcp.json

Included Skills1

m3-guideskills/m3-guide/SKILL.md

How to use m3 memory well — search-first protocol, write vs supersede, chatlog access and its store-topology trap, and verifying capture is live. Use when working with m3 memory tools or unsure which one fits.

MCP servers1

memorystdio
command
m3
env.LLM_ENDPOINTS_CSV
${user_config.endpoint}
env.M3_AUTO_INSTALL
1
env.M3_EMBED_FALLBACK_URL
${user_config.embed_fallback_url}
env.M3_EMBED_GGUF
${user_config.embed_gguf}
env.M3_ENGINE_ROOT
${user_config.engine_root}
env.M3_CONFIG_ROOT
${user_config.config_root}

Plugin manifests1

.claude-plugin/plugin.json
{
  "name": "m3",
  "displayName": "m3 Memory",
  "version": "2026.9.13.0",
  "description": "Give Claude Code a private memory that lives on your own machine — it remembers across sessions, works fully offline, and never touches the cloud. 100+ MCP tools: fast hybrid search, automatic chat capture, contradiction tracking, and one-command GDPR export/delete.",
  "keywords": [
    "memory",
    "mcp",
    "rag",
    "vector-search",
    "sqlite",
    "agentic",
    "long-term-memory",
    "chatlog",
    "knowledge-graph",
    "gdpr"
  ],
  "author": {
    "name": "skynetcmd",
    "url": "https://github.com/skynetcmd/m3-memory"
  },
  "homepage": "https://github.com/skynetcmd/m3-memory",
  "repository": "https://github.com/skynetcmd/m3-memory",
  "license": "Apache-2.0",
  "userConfig": {
    "endpoint": {
      "type": "string",
      "title": "LLM endpoint",
      "description": "OpenAI-compatible endpoint for embeddings + enrichment. Leave empty to probe LM Studio :1234 and Ollama :11434.",
      "default": ""
    },
    "capture_mode": {
      "type": "string",
      "title": "Chatlog capture mode",
      "description": "Which Claude Code hooks fire chatlog ingest. One of: both | stop | precompact | none. 'both' = Stop + PreCompact (recommended). Validated by mcp-memory at runtime; invalid values fall back to 'both'.",
      "default": "both"
    },
    "embed_fallback_url": {
      "type": "string",
      "title": "Embedder fallback URL (tier-2)",
      "description": "Always-on HTTP embedder URL — the m3-embed-server CPU service (install via `m3-embed-server.exe install` on Windows, systemd unit on Linux). Default :8082. Leave empty to fall back to llm_failover probes (much slower; not BGE-M3).",
      "default": "http://127.0.0.1:8082"
    },
    "embed_gguf": {
      "type": "string",
      "title": "In-proc embedder GGUF path (tier-1)",
      "description": "Absolute path to a BGE-M3 GGUF file. When set, the MCP server loads it in-process via m3_core_rs for 10-100x faster embeds. Optional — if empty, all embeds go through tier-2 HTTP. Common path: %USERPROFILE%/.lmstudio/models/deepsweet/bge-m3-GGUF-Q4_K_M/bge-m3-GGUF-Q4_K_M.gguf",
      "default": ""
    },
    "engine_root": {
      "type": "string",
      "title": "Engine root (databases) — advanced",
      "description": "Override where m3 keeps its databases + runtime state. Leave EMPTY for the default (~/.m3/engine, or M3_MEMORY_ROOT/engine). Only set this if you deliberately relocated the engine root — it must match the M3_ENGINE_ROOT every other m3 process uses, or the MCP server and the chatlog hooks will read different databases.",
      "default": ""
    },
    "config_root": {
      "type": "string",
      "title": "Config root — advanced",
      "description": "Override where m3 keeps its configuration (.chatlog_config.json, salt, …). Leave EMPTY for the default (~/.m3/config, or M3_MEMORY_ROOT/config). Only set this if you deliberately relocated the config root; it must match M3_CONFIG_ROOT everywhere else.",
      "default": ""
    }
  },
  "mcpServers": {
    "memory": {
      "command": "m3",
      "env": {
        "LLM_ENDPOINTS_CSV": "${user_config.endpoint}",
        "M3_AUTO_INSTALL": "1",
        "M3_EMBED_FALLBACK_URL": "${user_config.embed_fallback_url}",
        "M3_EMBED_GGUF": "${user_config.embed_gguf}",
        "M3_ENGINE_ROOT": "${user_config.engine_root}",
        "M3_CONFIG_ROOT": "${user_config.config_root}"
      }
    }
  }
}

If you maintain this plugin, link to this source-backed listing from your README so users can review its manifest and indexed components.

[m3 on Agent Plugins Marketplace](https://pluginsmp.com/plugins/m3)