适合谁
- 使用 Claude Code、Codex CLI 等 MCP 客户端并需要跨会话记忆的开发团队
- 希望自托管 SQLite 或使用 Cloudflare D1/R2 做云同步的用户
- 需要取代血缘(supersession lineage)与去重、而不只是追加文本的长期记忆场景
- 愿意自行配置嵌入与 LLM 供应商(OpenAI、OpenRouter、Cloudflare Workers AI 等)的高级用户
Memora 是一个社区维护(MIT 许可,非厂商官方)的 MCP 记忆层,把 AI 智能体的跨会话记忆做成可检索、可追溯、可视化的图谱数据。它的差异化在于 absorb 的 LLM 分类写入与取代血缘机制——更新不是覆盖而是新增版本并沿链检索——再加上 memory_digest 的主题聚合检索、结构化文档片段存储和内置图谱 UI。代价是配置面较大:嵌入与 LLM 是两个独立可拆分的供应商配置,存在部分拆分被拒绝、端点错误导致静默降级等陷阱;容器化部署还需常驻代理与 LaunchAgent。适合愿意自行配置密钥与端点、并对跨会话记忆有实际需求的团队;不适合追求零配置或需要官方支持的场景。
最强项 · 文档质量 14/20 最弱项 · 安全与权限 11/20
静态评测 · 未实际运行收录于 2026-09-10
查看 FMRS 评分方法 →运行环境:Python
CLOUDFLARE_API_TOKEN
访问 Cloudflare D1 的 API 令牌,在 Cloudflare 控制台创建,可用 CF_API_TOKEN 代替。
MEMORA_HEALTH_TOKEN
获取详细 /health/db 内容的 Bearer 令牌,自行设定即可。
MEMORA_EMBEDDING_API_KEY
嵌入提供商的 API 密钥,须与 MEMORA_EMBEDDING_BASE_URL 成对设置。
OPENAI_API_KEY
LLM(去重/聊天)用的 OpenAI 兼容密钥;嵌入仅在两个 MEMORA_EMBEDDING_* 均未设时回退使用。
MEMORA_DB_PATH
本地 SQLite 数据库路径,默认 ~/.local/share/memora/memories.db。
MEMORA_STORAGE_URI
云端存储 URI(d1:// 或 s3://),不设 MEMORA_DATABASES 时使用。
MEMORA_DATABASES
JSON 格式的多数据库注册表 {name: uri},仅在 streamable-http 下路由生效。
MEMORA_DEFAULT_DB
裸 /mcp 路径绑定的注册表数据库名。
MEMORA_CLOUD_ENCRYPT
上传 S3/R2 前是否加密本地文件(true/1/yes)。
MEMORA_CLOUD_COMPRESS
上传 S3/R2 前是否压缩本地文件。
MEMORA_CACHE_DIR
S3/R2 同步数据库的本地缓存目录。
MEMORA_ALLOW_ANY_TAG
设为 1 允许任意标签而不校验白名单。
MEMORA_TAG_FILE
包含允许标签数组的 JSON 文件路径。
MEMORA_TAGS
逗号分隔的允许标签列表。
MEMORA_HOST
HTTP 传输的绑定地址,默认 127.0.0.1。
MEMORA_PORT
HTTP 传输的绑定端口,默认 8000。
MEMORA_GRAPH_PORT
知识图谱可视化服务器端口,默认 8765。
MEMORA_TRANSPORT
传输方式:stdio(默认)、sse 或 streamable-http。
MEMORA_TOOL_PROFILE
暴露的工具子集:full(43 个)、leader(19 个)或 agent(12 个)。
MEMORA_MAX_SESSIONS
并发 MCP 会话硬上限,默认 128,0 禁用。
MEMORA_MAX_INIT_PER_MIN
每分钟允许的新会话数,默认 120,0 禁用。
MEMORA_MAX_INIT_BODY_BYTES
initialize 请求体大小上限,默认 65536。
MEMORA_SESSION_IDLE_TIMEOUT
空闲会话回收秒数,默认 1800,0 禁用。
MEMORA_HEALTH_TTL
就绪快照有效期秒数,默认 10。
MEMORA_HEALTH_TIMEOUT
一次健康刷新/单店探测的上限秒数,默认 15。
MEMORA_HEALTH_REFRESH_INTERVAL
服务器主动刷新就绪状态的间隔秒数,0 为仅按需轮询。
MEMORA_HEALTH_MAX_STALE
缓存结果可报告就绪的最长年龄秒数,默认 60。
MEMORA_STALE_DAYS
TODO/issue 视为过期的天数,insights 默认 14、图 UI 默认 30。
MEMORA_EMBEDDING_MODEL
嵌入后端:openai(默认)、sentence-transformers 或 tfidf。
SENTENCE_TRANSFORMERS_MODEL
sentence-transformers 模型名,默认 all-MiniLM-L6-v2。
MEMORA_EMBEDDING_BASE_URL
嵌入提供商的 base URL,须与 MEMORA_EMBEDDING_API_KEY 成对设置。
MEMORA_EMBEDDING_STRICT
推荐设为 1,嵌入出错时硬失败而非静默回退到 TF-IDF。
OPENAI_BASE_URL
LLM 的 OpenAI 兼容 base URL(如 OpenRouter)。
OPENAI_EMBEDDING_MODEL
openai 嵌入后端的模型 ID,须存在于嵌入主机。
MEMORA_LLM_ENABLED
是否启用 LLM 去重比较,默认 true。
MEMORA_LLM_MODEL
去重比较模型,默认 gpt-4o-mini。
MEMORA_LLM_TIMEOUT
OpenAI 客户端等待秒数,默认 60。
MEMORA_REWRITE_MODEL
图聊天面板 RAG 查询重写模型,未设则用 MEMORA_LLM_MODEL。
MEMORA_VECTOR_SCAN_PAGE_SIZE
从 D1 加载嵌入的每页行数,D1 上建议设 100。
CHAT_MODEL
本地图聊天面板模型,未设则回退 MEMORA_LLM_MODEL。
MEMORA_CLOUD_GRAPH_ENABLED
设为 true/1/yes 时写操作通知托管图谱。
MEMORA_CLOUD_GRAPH_WORKER_URL
广播用的 Worker base URL。
MEMORA_CLOUD_GRAPH_DEBOUNCE
广播前的写入合并秒数,默认 1.0。
MEMORA_CLOUD_GRAPH_SYNC_SCRIPT
启动时捕获的同步脚本路径。
AWS_PROFILE
~/.aws/credentials 中的 AWS 凭证 profile(用于 R2)。
AWS_ENDPOINT_URL
S3 兼容端点(R2/MinIO)。
R2_PUBLIC_DOMAIN
R2 图片 URL 的公开域名。
方式一(pip,本地 stdio):1) 执行 pip install memora-mcp(PyPI 包名为 memora-mcp,裸 memora 是无关项目);如需离线本地嵌入可执行 pip install "memora-mcp[local]"(约 2GB PyTorch)。2) 在项目根的 .mcp.json 中添加 "command": "memora-server",并按需设置 MEMORA_DB_PATH、MEMORA_ALLOW_ANY_TAG、MEMORA_GRAPH_PORT 等环境变量。3) 重启客户端。
方式二(容器,HTTP 服务):默认运行时为 Apple 的 container CLI,需 Apple 芯片且 macOS 26。依次执行 container system start;git clone 仓库并 cd 进入;cp instances/example.env instances/myinstance.env 并编辑 PORT 与后端(STORAGE_URI、VOLUME 或 MEMORA_DATABASES);创建凭证文件 ~/.config/memora/credentials.mcp.json(副本可通过 CRED_SOURCE 指定)并 chmod 600;复制 scripts/memora_proxy.py 到 ~/.local/libexec/memora/;然后执行 ./scripts/memora-instance.sh build myinstance、up myinstance、proxy myinstance,并运行其打印的 launchctl 命令。工作区 URL 为 http://127.0.0.1:<PORT>/mcp(非默认存储需追加 /<name>)。
Codex CLI 则写入 ~/.codex/config.toml 的 [mcp_servers.memora] 段,设置 command 与 env。
{"mcpServers":{"memora":{"command":"memora-server","args":[],"env":{"MEMORA_DB_PATH":"~/.local/share/memora/memories.db","MEMORA_ALLOW_ANY_TAG":"1","MEMORA_GRAPH_PORT":"8765"}}}}
以 Claude Code 为例。其他客户端的配置文件位置或字段可能不同(如 VS Code 使用 servers 字段),可用下方配置生成器转换。
{
"servers": {
"memora": {
"command": "memora-server",
"args": [],
"env": {
"MEMORA_DB_PATH": "~/.local/share/memora/memories.db",
"MEMORA_ALLOW_ANY_TAG": "1",
"MEMORA_GRAPH_PORT": "8765"
}
}
}
}
写入项目的 .vscode/mcp.json(VS Code 使用 servers 字段)。
claude mcp add memora -e 'MEMORA_DB_PATH=~/.local/share/memora/memories.db' -e MEMORA_ALLOW_ANY_TAG=1 -e MEMORA_GRAPH_PORT=8765 -- memora-server
在终端运行;先把 <…> 占位符换成你自己的值。
安装 memora-mcp 并在客户端配置 memora-server 后,工具列表中应出现 memory_absorb、memory_semantic_search 等工具;调用 memory_stats 若返回 database 字段和记忆数量即证明连接成功。
连接成功后,可以直接对 AI 助手这样说:
没有匹配的工具
依据项目文档列出,未经本站实测。
Memora 是一个面向 AI 智能体的 MCP 记忆层,提供结构化存储、语义检索、图谱关系以及可溯源的跨会话上下文。它使用 SQLite 作为本地存储,并可选同步到云端(S3、R2、Cloudflare D1)。核心能力包括:absorb(由 LLM 对写入事实分类为重复/更新/矛盾/相关/新增,跳过重复并建立关联)、supersession 血缘(更新以取代旧知识而非删除,检索默认沿链取当前版本)、memory_digest(topic) 主题摘要(聚合相关记忆、未完成的 TODO/Issue、关联边与来源 ID)、向量语义搜索(TF-IDF、sentence-transformers、OpenAI 三种后端)、LLM 去重、带类型的记忆链接、结构化文档片段存储、知识图谱可视化与内置实时图谱服务器、RAG 聊天面板、事件通知、统计与洞察、操作历史。一个进程可通过 MEMORA_DATABASES 注册表服务多个工作区,客户端用 /mcp/<name> 路径选择存储。
通过 MCP 在 AI 助手中管理您的 Hevy 训练数据。
Firecrawl 官方 MCP Server,为 AI Agent 提供网页搜索、抓取与结构化提取
统一的命令行语法,接入约30个可信生物医学数据源。
加密、完全离线的 AI 代理长期记忆库
源版本 c5624e8303f0 数据同步于 2026-10-19 查看 FMRS 评分方法