Token导航 LogoToken导航TokenDH.com
sabmemory (Sablinova) logo
数据服务未说明官方级别未说明来源级核验

sabmemory (Sablinova)

MCP Server

sabmemory是一款轻量级的Rust MCP内存服务器,采用SQLite FTS5全文搜索代替向量嵌入,实现低资源消耗下的快速相关搜索,适用于需要高效内存管理的场景。

工具数

49

提示词数

0

GitHub Stars

2

资源数

0
内存管理轻量级Rust全文搜索知识图谱

安装说明

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

作者 / 组织

Sablinova

提供方

Sablinova

最后核验

2026/5/17 20:19

快速接入

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

详细介绍

sabmemory

轻量级Rust MCP内存服务器。接近零的RAM替代了基于嵌入式的存储系统。

~6 MB RAM 在生产中。单个4.1 MB静态二进制文件。没有Python,没有Node.js,没有ML运行时,没有外部依赖。内置网络仪表板,具有知识图可视化功能。

为什么是sabmemory?

每个其他MCP内存服务器都需要大量的运行时(Python/Node.js)、用于嵌入的ML模型或云API调用。sabmemory使用SQLite FTS5全文搜索而不是向量嵌入——以资源成本的一小部分实现快速、相关的搜索。

与其他MCP内存服务器的比较

概述

服务器语言星级许可证搜索方法RAM使用率安装大小
sabmemory FTS5 + BM25~6 MB4.1 MB二进制文件
mcp存储器服务Python1.5kApache 2.0BM25+ONNX矢量混合~500-850 MB~400 MB(型号+部署)
健忘的Python190MITFastEmbed+交叉编码器重新排序~300-500 MB~200 MB(型号+显示器)
mem0Python/TS49.1kApache 2.0LLM驱动的提取+向量~ 300-500 MBpip安装+LLM API
基本内存Python2.6kMITFastEmbed矢量搜索约200-400 MBpip安装(约200 MB)
@模型上下文协议/服务器内存TypeScript80.5k\*MIT实体图遍历~50-80 MBnpm安装
超级存储器TypeScript16.8kMIT混合RAG(云)云托管SaaS

\*星号显示的是modelcontextprotocol/servers monorepo,而不是内存包。

特性

功能sabmemorymcp内存服务健忘mem0基本内存@mcp/memory超级内存
MCP工具4915+(REST+MCP)42(3元)~10~104云API
知识图谱是(键入边)是(三元组)
实体系统是(键入,AKA)有(简单)
内存版本控制是(链)
自动链接是(FTS5)是(矢量)
自动忘记/过期是(衰变)
代币预算
项目
文档不是是(Markdown)
代码伪影
用户配置文件是(自动生成)
Web仪表板是(3D WebGL)是(OpenMemory)有(SaaS)
多用户单用户(本地)是(身份验证)是的(多租户)单用户单租户是(SaaS)
集装箱范围界定

运行时和依赖关系

特性sabmemorymcp内存服务健忘mem0基本内存@mcp/memory超级内存
运行时无(静态二进制)Python 3.10+Python 3.12+Python 3.8+Python 3.11+Node.js 18+
外部服务无(ONNX本地)无(FastEmbed本地)OpenAI API密钥没有云API
需要ML模型是(MiniLM-L6-v2)是(bge-small-en)是\[通过LLM API\]\]是\[快速嵌入\]是\[云\]
存储后端SQLite(捆绑)SQLite vecSQLite或PostgreSQLQdrant/ChromaDB/自定义SQLite+MarkdownJSONL文件
Docker支持不需要不适用
安装命令cargo buildpip installuvx forgetful-aipip install mem0aipip install basic-memorynpx注册
需要配置零配置.env 推荐Zero-config需要LLM API密钥Zero-connfigZero-cononfig需要帐户
离线操作 (需要LLM API)
自托管无(SaaS)

搜索质量权衡

sabmemory以语义相似性换取资源效率。FTS5+BM25执行关键字感知排名搜索,而不是意义感知向量搜索。在实践中,这对于MCP内存用例来说效果很好,因为:

  1. 记忆是简短的原子笔记,带有明确的关键字和标签
  2. 编写内存的代理与搜索内存的代理是同一个代理——它使用一致的术语
  3. 无论词汇匹配如何,重要性得分提升都会显示最相关的结果
  4. 通过FTS5相似性自动链接在写入时捕获相关概念

对于需要真正语义搜索的用例(在搜索“car”时找到“automotive”),基于嵌入的服务器(如mcp内存服务或Forgetful)更合适。

在2 GB VPS(Ubuntu 24.04)上测量。 sabmemory RSS:6.5 MB Ps正在使用中,包含19个内存、2个实体、2个项目和1个文档。空闲实例降至约2 MB。

特性

  • 49个本地MCP工具 --内存、实体、项目、文档、代码工件、关系、配置文件、版本控制
  • FTS5全文搜索 BM25排名+重要性得分提升
  • 内存版本控制 --具有关系类型(更新/扩展/派生)的版本链,灵感来自 超级存储器
  • 自动遗忘 --set forget_after 自动到期日期;软遗忘与过时的区别
  • 集装箱范围界定container_tag 命名空间隔离字段
  • 自动链接 --新存储器通过FTS5自动链接到类似的现有存储器
  • 代币预算搜索 --结果受可配置令牌预算的限制(默认8000)
  • 知识图谱 --具有类型化关系、双向内存链接的实体
  • 文档和代码工件 --存储长格式内容和可重用代码片段
  • 用户配置文件 --从高重要性记忆(静态+动态事实)自动生成
  • 内置迁移 --从导入数据 健忘 数据库

安装

来源

git clone https://github.com/Sablinova/sabmemory.git
cd sabmemory
cargo build --release
cp target/release/sabmemory ~/.local/bin/

需求

  • Rust 1.70+(使用2021版)
  • 没有其他依赖关系——SQLite是通过rusqlite捆绑的

用法

MCP服务器(stdio)

sabmemory serve
# or just:
sabmemory

服务器使用MCP协议通过stdin/stdout进行通信。在MCP客户端中配置它。

OpenCode配置

{
  "mcp": {
    "sabmemory": {
      "type": "local",
      "command": ["/path/to/sabmemory", "serve"],
      "enabled": true
    }
  }
}

从健忘的ai迁移

sabmemory migrate --from ~/.local/share/forgetful/forgetful.db

迁移:项目、实体、内存、文档、代码工件、关系和所有关联。FTS索引在迁移后会自动重建。

数据存储

数据库: ~/.local/share/sabmemory/sabmemory.db

数据库在首次运行时自动创建。所有数据都存储在一个带有FTS5虚拟表的SQLite文件中,用于全文搜索。

建筑

搜索策略

  1. 自然语言查询被标记为FTS5搜索词
  2. FTS5 MATCH与BM25排名分数相关性
  3. 帖子过滤器:过时、遗忘、过期、项目、标签、容器、min_importance
  4. 重要性得分提升应用于最终排名
  5. 代币预算执行限制了结果大小
  6. 链接内存扩展增加了链接知识

内存模型

记忆遵循Zettelkasten(原子音符)原则:

  • 标题:简短,可搜索(最多200个字符)
  • 内容:单个概念(最多2000个字符)
  • 上下文:为什么这很重要(最多500个字符)
  • 关键词:用于搜索聚类(最多10个)
  • 标签:用于分类(最多10个)
  • 重要性:1-10分影响搜索排名和个人资料生成

版本控制(受超级内存启发)

记忆可以通过以下方式形成版本链 parent_memory_id:

  • 更新:新版本与父版本相矛盾/替换父版本
  • 扩展:新版本丰富了父版本
  • 源自:系统推断关系

只有最新版本(is_latest=true)出现在搜索结果中。

自动忘记

forget_after (ISO 8601日期)存储在内存中。在每次查询之前,过期的内存会自动标记为遗忘。被遗忘的记忆被排除在搜索之外,但保留以供审计。

工具参考

记忆工具(13)

工具说明
create_memory使用自动链接创建原子内存
get_memory获取所有关联的内存
update_memoryPATCH更新字段
delete_memory永久删除
query_memoryFTS5搜索与BM25+重要性提升
get_recent最近更新的记忆
link_memories创建双向链接
unlink_memories删除链接
mark_obsolete带有审计跟踪的软删除
forget_memory软遗忘(不同于过时)
search_similar查找文本相似的记忆
create_version创建版本更新
get_version_chain获取完整版本历史记录

实体工具(15)

工具说明
create_entity创建实体(人、组织、设备、概念)
get_entity获取实体详细信息
update_entity补丁更新
delete_entity删除所有关联
list_entities列出/筛选实体
search_entities按姓名/别名搜索FTS
get_entity_memories实体的内存ID
link_entity_memory将实体链接到内存
unlink_entity_memory删除实体内存链接
link_entity_project将实体链接到项目
unlink_entity_project删除实体项目链接
create_relationship类型化定向关系
get_relationships获取实体关系
update_relationship更新关系
delete_relationship删除关系

项目工具(5)

工具说明
create_project创建项目容器
get_project获取具有内存计数的项目
update_project补丁更新
delete_project删除(保留相关记忆)
list_projects列出/筛选项目

文档工具(5)

工具说明
create_document存储长表单内容
get_document获取完整内容
update_document补丁更新
delete_document删除
list_documents列表/筛选器

代码工件工具(5)

工具说明
create_code_artifact存储可重用代码
get_code_artifact获取工件
update_code_artifact补丁更新
delete_code_artifact删除
list_code_artifacts列表/筛选器

用户和配置文件工具(4)

工具说明
get_user获取用户信息
update_user_notes更新用户笔记
get_profile自动生成的配置文件
refresh_profile重新生成配置文件

元工具(2)

工具说明
list_tools按类别列出所有工具
tool_info详细的工具信息+模式

Web仪表板

sabmemory包括一个内置的web仪表板,用于可视化您的知识图、浏览记忆和探索实体/项目/文档。

运行仪表板

sabmemory dashboard --port 3080

仪表板在 http://localhost:3080 并提供:

  • 知识图谱 --所有记忆、实体及其连接的交互式Three.js WebGL 3D可视化
  • 内存浏览器 --包含重要性、标签和元数据的所有记忆的可搜索列表
  • 实体资源管理器 --查看实体、其类型、别名和关系
  • 项目视图 --具有相关内存计数的项目
  • 文档视图 --存储的长格式文档
  • 搜索 --在所有记忆中进行全文搜索
  • 细节模态 --单击任何内存以查看完整内容、链接和关联

仪表板API

仪表板在上公开了一个REST API /api/:

端点描述
GET /api/stats内存、实体、项目、文档和链接计数
GET /api/memories所有带有元数据的内存
GET /api/memory/{id}具有链接和关联的单个内存
GET /api/entities所有实体
GET /api/relationships具有已解析名称的实体关系
GET /api/projects具有内存计数的项目
GET /api/documents所有文件
GET /api/graph用于可视化的完整知识图(节点+边)
GET /api/search?q=...FTS5搜索

作为systemd服务运行

# Create user service
mkdir -p ~/.config/systemd/user
cat > ~/.config/systemd/user/sabmemory-dashboard.service << 'EOF'
[Unit]
Description=sabmemory web dashboard
After=network.target

[Service]
ExecStart=%h/.local/bin/sabmemory dashboard --port 3080
Restart=on-failure
RestartSec=5

[Install]
WantedBy=default.target
EOF

# Enable and start
systemctl --user daemon-reload
systemctl --user enable --now sabmemory-dashboard

反向代理(nginx)

要使用HTTPS为反向代理后面的仪表板提供服务,请执行以下操作:

server {
    listen 443 ssl;
    server_name memory.yourdomain.com;

    location / {
        proxy_pass http://127.0.0.1:3080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

积分

sabmemory的灵感来自并建立在以下想法之上:

  • 超级存储器 --内存版本控制链、带过期的自动遗忘、基于容器的作用域、自动生成的用户配置文件、内存类型分类
  • 健忘 --知识图架构(实体、关系、内存实体关联)、文档和代码工件存储、基于项目的组织、原子内存原理

许可证

麻省理工学院

目录标签

目录标签

内存管理轻量级Rust全文搜索知识图谱本地部署

接入字段

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

未说明

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

none

工具数量(toolCount,工具数)

49

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明none部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP