本项目实现了一个基于 Personal Context Technology (PCT) 的模型上下文协议(MCP)服务器。借助该服务器,AI 助手能够访问和更新用户的个性化数据,进而在会话之间维持持久记忆,为用户提供更贴合需求的服务。
克隆项目仓库:
git clone https://github.com/mikhashev/personal-context-manager.git
cd pct-mcp-server
安装依赖项:
npm install
配置上下文存储路径:
src/storage/contextStorage.ts 文件。DEFAULT_CONTEXT 对象以适应您的需求。启动服务器:
npm start
初始化上下文文件:
cp data/personal_context.json.example data/personal_context.json
修改 personal_context.json 文件,添加或更新您的个性化数据。
运行服务器并访问 API 端点以测试功能。
获取上下文:
curl http://localhost:3000/api/context
更新上下文:
curl -X PUT http://localhost:3000/api/context/basic_info/name \
-H "Content-Type: application/json" \
-d '{"name":"John Doe"}'
克隆项目仓库:
git clone https://github.com/mikhashev/personal-context-manager.git
cd pct-mcp-server
安装依赖项:
npm install
配置上下文存储路径:
src/storage/contextStorage.ts 文件。DEFAULT_CONTEXT 对象以适应您的需求。启动服务器:
npm start
# 初始化上下文文件
cp data/personal_context.json.example data/personal_context.json
# 更新上下文
curl -X PUT http://localhost:3000/api/context/basic_info/name \
-H "Content-Type: application/json" \
-d '{"name":"John Doe"}'
个人上下文技术(PCT)是一种用于管理用户个性化数据的技术,通过模型上下文协议(MCP)实现与 AI 系统的交互。该技术旨在增强 AI 助手的能力,使其能够根据用户的上下文信息提供更智能、更个性化的服务。
默认的个人上下文包括以下部分:
您可以通过编辑 src/storage/contextStorage.ts 文件或替换数据目录中的 personal_context.json 文件来自定义上下文结构。
pct-mcp-server/
├── .git/ # Git 仓库数据
├── .gitignore # Git 忽略规则
├── LICENSE # 许可证文件
├── README.md # 项目文档
├── package-lock.json # npm 锁定文件
├── package.json # 项目配置和依赖项
├── tsconfig.json # TypeScript 配置
└── src/ # 源代码
├── index.ts # 应用程序入口点
├── resources/ # MCP 资源实现
│ └── personalContext.ts # 个人上下文资源
├── storage/ # 存储实现
│ └── contextStorage.ts # 上下文存储功能
├── tools/ # MCP 工具实现
│ ├── contextSuggestion.ts # 上下文建议工具
│ └── updateContext.ts # 更新上下文工具
└── utils/ # 工具函数
└── instructionHandler.ts # 指令处理逻辑
# 自动生成目录(不在仓库中)
# ----------------------------------------
# dist/ # 编译后的 JavaScript 文件(被忽略)
# node_modules/ # 依赖项(被忽略)
# data/ # 用户数据(被忽略或仅包含示例文件)
# └── personal_context.json # 个人上下文数据(示例文件,不要更改文件名 personal_context.json,如果需要更新数据请修改内容)
默认实现使用 stdio 传输进行开发。如需在生产环境中使用 HTTP 传输:
src/index.ts 文件。欢迎贡献代码!请遵循以下步骤:
叉击仓库并创建分支:
git checkout -b feature/your-feature-name
提交您的更改:
git add .
git commit -m "添加功能:your-feature-name"
推送到仓库并提交拉取请求。
本项目遵循 MIT 许可证。请查看 LICENSE 文件以获取详细信息。
感谢您的支持!如需帮助或反馈,请随时与我们联系。