项目简介

Neotoma是一个基于Model Context Protocol (MCP) 构建的AI记忆服务器,能够将用户的碎片化个人数据(PDF文档、图片、发票、合同等)转换为可查询的结构化知识图谱,让AI智能体能够记住上下文、偏好和事实,实现跨会话的持续性记忆。

主要功能

  • 双路径数据摄入:支持文件上传(PDF、JPG、PNG)和AI智能体交互数据存储
  • 确定性实体解析:基于哈希的规范ID统一跨文档和AI创建的数据中的实体
  • 自动时间线生成:从所有个人数据中的日期字段创建按时间顺序排列的事件序列
  • 跨平台兼容:通过MCP协议支持ChatGPT、Claude、Cursor等多种AI工具
  • 完整溯源记录:每个事实都能追溯到其来源(文档或AI交互)
  • 隐私优先架构:端到端加密和行级安全控制
  • 事件源历史记录:所有状态变更都记录在仅追加的事件日志中
  • 图结构记忆:将记录、实体和事件通过类型化边和关系连接
  • 不可变审计追踪:每个变更都被永久记录,支持时间旅行查询

安装步骤

  1. 克隆仓库:'git clone https://github.com/markmhendrickson/neotoma'
  2. 安装依赖:'npm install'
  3. 配置环境变量:创建.env.development文件并填入Supabase凭证
  • 执行数据库架构:在Supabase SQL编辑器中运行supabase/schema.sql

服务器配置

MCP客户端需要配置以下信息来连接Neotoma服务器:

  • 服务器名称:neotoma
  • 启动命令:npm
  • 参数:run dev:mcp

这个配置告诉MCP客户端使用Node.js运行开发模式下的MCP服务器,支持自动重新构建功能,适合与Cursor等工具集成使用。

基本使用方法

  1. 启动MCP服务器:'npm run dev:mcp'
  2. 配置AI工具(Cursor、ChatGPT等)使用上述配置
  3. 通过文件上传或AI对话向系统添加结构化数据
  4. AI智能体可以读取现有记忆并写入新的结构化数据
  5. 系统会自动进行实体统一、时间线生成和关系构建
  6. 智能体可以在后续会话中查询和利用这些积累的记忆

项目支持多种开发服务器模式,包括HTTP服务器、UI界面、原型演示等,可根据需要选择合适的启动命令。

信息

分类

数据库与文件