存储器MCP
生产级 存储器MCP 用于单租户LibreChat工作区的服务器。它存储原始对话回合,提取持久记忆(决策/约束/错误/假设/未决问题),并提供混合检索和计划一致性审计。
产品特点
- 原始转弯记录 +嵌入+全文索引。
- 已提取内存 推断:决定,限制,错误,假设,开放问题。
- Dedup + 替换链条 (保留旧的决定,检测陈旧的决定)。
- 混合检索:pgvector+PostgreSQL全文+RRF融合。
- 快速/深度模型可预测的延迟,代币预算管理。
- 审计: 计划/文本的主动决定/限制和取代项目的控制.
- 共享导入/导出通过 HMAC 签名的包进行控制共享。
- 可观测性:JSON日志+普罗米修斯度量衡。
安装
1)环境变量
.env 文件 .env.example 创建于:
cp .env.example .env特别是设置:
DATABASE_URLLLM_API_KEYSHARED_HMAC_SECRET
2) Docker编写
make up(3)移民
make migrate4) 测试人员
make testMCP端点
MCP端点 /mcp 在下面工作。这项服务 tool + arguments 使用JSON。
例子 :
curl -X POST http://localhost:8080/mcp \
-H "Content-Type: application/json" \
-d '{
"tool": "thread.create",
"arguments": {}
}'LibreChat MCP 配置
将 LibreChat MCP URL 设置为:
- 成功:
https://mcp.datasins.com/mcp - Gökçe:
https://mcp.gokce.ai/mcp
计划注册表(主题分离)
计划作为单独的工作主题进行管理,每个线程都依赖于一个计划。
plan.create
{
"tool": "plan.create",
"arguments": {
"name": "memory-mcp-core",
"meta": {"owner": "ugur"}
}
}thread.create
{
"tool": "thread.create",
"arguments": {
"plan_id": "
",
"meta": {"topic": "ingest-pipeline"}
}
}示例工具 payloads
转折点
{
"tool": "turn.ingest",
"arguments": {
"thread_id": "",
"role": "user",
"text": "Yeni karar: Postgres kullanılacak.",
"external_turn_id": "librechat-turn-123",
"embed_now": true
}
}external_turn_id 在相同值的重复呼叫中表现为无能。
蒸馏萃取
{
"tool": "distill.extract",
"arguments": {
"thread_id": "",
"turn_id": "",
"include_recent_turns": 4,
"write_to_memory": true
}
}retrieve.context
{
"tool": "retrieve.context",
"arguments": {
"thread_id": "",
"query": "Hangi kararlar aktif?",
"mode": "fast",
"scope": "distilled_only",
"top_k": 8,
"token_budget": 800,
"recency_bias": 0.1,
"explain": true
}
}audit.check_一致性
{
"tool": "audit.check_consistency",
"arguments": {
"thread_id": "",
"proposed_plan_text": "SQLite kullanalım.",
"deep": true
}
}共享出口
{
"tool": "shared.export",
"arguments": {
"thread_id": "",
"types": ["decision", "constraint"],
"include_mistakes": false,
"expires_in_minutes": 60
}
}共享导入
{
"tool": "shared.import",
"arguments": {
"payload": {"...": "..."},
"signature": ""
}
}安全
- Pydantic验证+严格列表。
- 系统提示中的明确警告,以确保 prompt injection 的安全性。
- HMAC文件导出/导入。
- API密钥不会被记录。
笔记
EMBEDDING_DIM否则,迁移需要更新。ENABLE_LLM_RERANK=trueise低置信度深度检索'da LLM重新存储活动卷。- 保留政策
.env内部RETENTION_*由变量控制。
LibreChat端到端的用例
(1)启动新计划
plan.create创建一个新的计划。thread.create在计划下方打开一个线程。turn.ingest发送第一个决定。
(2)继续现有计划
plan.list找到计划。- 跟踪当前计划的线程 ID 或添加新线程。
distill.extract通过新的回合来决定/限制。
3) 深度审计
retrieve.context岛mode=deephave的常用口语形式explain=true使用。audit.check_consistency确认计划文本。stale_references通过检查输出更新替换的决策。
