Token导航 LogoToken导航TokenDH.com
MCP Elastic Memory logo
AI代理未说明官方级别未说明来源级核验

MCP Elastic Memory

MCP Server

一个为AI代理提供持久性记忆管理的服务器,支持新鲜度跟踪和间隔重复功能,适用于需要长期知识维护的场景。

工具数

21

提示词数

0

GitHub Stars

19

资源数

0
记忆管理TypeScriptClaude知识图谱Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

j3k0

提供方

j3k0

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

mcp脑工具

MCP服务器为AI代理提供持久内存,内置新鲜度跟踪和间隔重复。由Elasticsearch支持。

与简单的键值记忆存储不同,mcp大脑工具跟踪每条知识的年龄,标记需要审查的内容,并让代理验证信息以保持新鲜——灵感来自间隔重复如何帮助人类记忆知识。

特性

  • 间隔重复新鲜度 --每个实体的审查间隔在验证时加倍(上限为365天)。信任标签(新鲜/正常/老化/陈旧/存档)告诉代理要信任什么。
  • 渐进式搜索 --查询首先返回新的结果,仅在需要时自动扩展以包含旧数据。
  • 作为实体的观察 --每个观察都有自己的新鲜度生命周期,因此“构建被打破”(1天回顾)和“成立于2015年”(365天回顾)的年龄是独立的。
  • 内存区域 --按项目、团队或领域隔离知识。
  • AI驱动的过滤 --可选的Groq集成按相关性对搜索结果进行评分。
  • 按设计干燥 --工具描述指导代理不要存储代码、git或文档中已有的内容。

设置

先决条件

  • Node.js>=18
  • Docker(用于Elasticsearch)或远程Elasticsearchs实例

安装和构建

npm install
npm run build

启动Elasticsearch

npm run es:start

或者通过以下方式指向您自己的实例 ES_NODE 环境变量。

配置您的MCP客户端

添加到您的Claude代码、Claude桌面或其他MCP客户端配置中:

{
  "mcpServers": {
    "memory": {
      "command": "node",
      "args": ["/path/to/mcp-brain-tools/dist/index.js"],
      "env": {
        "ES_NODE": "http://localhost:9200",
        "GROQ_API_KEY": "your-key-here"
      }
    }
  }
}

GROQ_API_KEY 是可选的——启用基于人工智能的搜索过滤和区域相关性评分。

安装自动记忆挂钩(仅限克劳德代码)

内存挂钩在每条用户消息上运行,并自动注入相关上下文——不需要代理协作。

添加 ~/.claude/settings.json:

{
  "hooks": {
    "UserPromptSubmit": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "node /path/to/mcp-brain-tools/dist/memory-hook.js"
          }
        ]
      }
    ]
  }
}

钩子使用相同的 ES_NODE, AI_API_KEY/GROQ_API_KEY, AI_API_BASE,以及 AI_MODEL env变量(在 env 阻止您的设置,或将其导出到您的shell配置文件中)。

AI_API_BASE 默认为Groq的端点,但接受任何与OpenAI兼容的API URL。

运作原理

实体和意见

实体代表任何值得记住的东西——人、项目、决定、事实。每个实体都有:

  • A. 名字类型
  • 间隔重复字段: verifiedAt, reviewInterval, nextReviewAt
  • A. 信任标签 根据新鲜度计算: 1 - (daysSinceVerified / reviewInterval)

观察结果存储为单独的实体,通过以下方式链接 is_observation_of 关系。每个观察都有自己的审查节奏:

Entity: "iaptic-server" (type: Project, reviewInterval: 30 days)
  = 0` --新鲜和正常的实体
1. `freshness >= -2` --增加老化和陈腐
1. 无筛选器--添加存档

这使结果保持干净,同时确保不会永久丢失任何东西。

## MCP工具

|工具|说明|
|------|-------------|
| `create_entities` |创建具有可选观察值和reviewInterval的实体|
| `update_entities` |更新现有实体|
| `delete_entities` |删除实体(可选级联)|
| `add_observations` |将观察结果添加为具有自身新鲜度的独立实体|
| `verify_entity` |确认实体仍然准确,延长审核间隔|
| `search_nodes` |使用渐进式新鲜度过滤进行搜索|
| `open_nodes` |使用新鲜度元数据按名称获取特定实体|
| `get_recent` |获取最近访问的实体|
| `create_relations` |在实体之间创建关系|
| `delete_relations` |删除关系|
| `inspect_knowledge_graph` |基于人工智能的实体检索,带有初步答案|
| `inspect_files` |基于AI的文件内容检测|
| `list_zones` |列出记忆区域(带有AI相关性评分)|
| `create_zone` / `delete_zone` |管理内存区域|
| `copy_entities` / `move_entities` |在区域之间转移实体|
| `merge_zones` |合并区域以解决冲突|
| `zone_stats` |获取区域的实体/关系计数|
| `mark_important` |提高实体相关性得分|
| `get_time_utc` |获取当前UTC时间|

## 环境变量

|变量|默认值|描述|
|----------|---------|-------------|
| `ES_NODE` | `http://localhost:9200` |Elasticsearch URL|
| `ES_USERNAME` |--|Elasticsearch用户名|
| `ES_PASSWORD` |--| Elasticsearch密码|
| `GROQ_API_KEY` |-|人工智能过滤的Groq API密钥|
| `GROQ_MODELS` | `openai/gpt-oss-120b,llama-3.3-70b-versatile` |逗号分隔的模型列表|
| `KG_INDEX_PREFIX` | `knowledge-graph` |Elasticsearch索引前缀|
| `KG_DEFAULT_ZONE` | `default` |默认存储区|
| `DEBUG` | `false` |启用调试日志记录|

## 推荐的代理说明

为了使代理能够主动使用内存服务器,请在您的 `CLAUDE.md` (或等效的说明文件):

Memory

Use MCP Memory (mcp__memory__* tools) — a shared knowledge graph across all agents, projects, and computers.

When to SAVE (immediately, before moving on):

  • Something you tried didn't work (non-transient) → save what failed and why, so no agent repeats it
  • A decision was made (architectural, design, workflow) → save the decision and the reason
  • The user corrects you or gives explicit instructions → save the rule
  • You learn something non-obvious that took effort to discover → save it

When to SEARCH (before starting, not after failing):

  • At the start of every non-trivial task — search before thinking, not after hitting a wall
  • About to try an approach that might have been attempted before → search first
  • User references something from a past session → search before asking

Rules:

  • Skip anything easy to find in code, git log, or docs
  • Use the project name as the zone for project-specific knowledge; default for general knowledge
  • Keep entries short — the AI filters server-side, so be generous rather than selective
  • Short reviewInterval (e.g. 3–7 days) for volatile facts; longer (30–180) for stable ones

关键的见解是:代理需要明确的基于触发器的指令(“何时执行X,执行Y”),而不仅仅是对工具功能的描述。

## 发展

npm run build # Compile TypeScript npm run dev # Watch mode npm run test:jest # Run Jest tests npm run es:start # Start Elasticsearch npm run es:stop # Stop Elasticsearch npm run es:reset # Wipe data and restart npm run import # Import from JSON npm run export # Export to JSON


## 许可证

麻省理工学院

目录标签

目录标签

记忆管理TypeScriptClaude知识图谱本地部署间隔重复AI代理Elasticsearch

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

session

工具数量(toolCount,工具数)

21

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明session部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP