个性化记忆库

小智个性化记忆库是一个本地私有记忆库,提供保存、查询和纠正长期偏好、背景和项目状态的功能。

  • by MatchlessHeroHx
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 MatchlessHeroHx/xiaozhi-MCP

使用说明

小智个性化记忆库 MCP

这是一个面向小智设备的本地私有记忆库,基于 MCP(Model Context Protocol)实现。它提供 3 个记忆工具,专门用于保存、查询和纠正你的长期偏好、背景和当前项目状态。

功能概览

  • search_personal_memory
    • 在回答需要依赖你的历史偏好、背景或当前项目时查询记忆。
  • save_personal_memory
    • 在你明确表达稳定偏好、长期背景、重要关系或项目状态时保存结构化记忆。
  • correct_personal_memory
    • 在你说“删掉这条”“撤销刚才那条”时修正记忆。
  • 本地 SQLite 数据层
    • 支持槽位覆盖、删除、恢复、审计事件和 FTS/LIKE 检索。
  • 本地管理页
    • 支持查看、搜索、编辑、删除、恢复和事件流查看。

环境要求

  • uv 可用
  • 小智后台已拿到 MCP_ENDPOINT
  • 推荐使用 uv run --python 3.12 ...

当前机器的 /usr/bin/python3 可能受 Xcode license 限制,因此默认命令都走 uv。

安装依赖

uv sync

启动 MCP 桥接

先配置环境变量:

export MCP_ENDPOINT="<your_mcp_endpoint>"

再启动桥接:

uv run --python 3.12 mcp_pipe.py

默认会读取根目录下的 mcp_config.json,并启动 personal-memory 服务。

启动管理页

uv run --python 3.12 uvicorn admin_app:app --host 127.0.0.1 --port 8765 --reload

打开 http://127.0.0.1:8765 即可访问。

数据和日志

  • 数据库:data/personal_memory.db
  • 日志:logs/personal_memory.log

运行测试

uv run --extra dev pytest

设计约束

  • 工具名和参数名都使用清晰全称,避免缩写。
  • MCP 工具文档注释只保留短说明,避免工具列表 token 过长。
  • 所有调试输出走 logger,不使用 print。
  • MCP 返回值统一为短 JSON,目标长度控制在 900 字节内。
  • 敏感信息默认拒绝入库,包括密码、验证码、证件号、银行卡号、API Key、私钥和助记词等。