Pct Mcp Server

Pct Mcp Server

🚀 个人上下文技术 MCP 服务器

本项目实现了一个基于 Personal Context Technology (PCT) 的模型上下文协议(MCP)服务器。借助该服务器,AI 助手能够访问和更新用户的个性化数据,进而在会话之间维持持久记忆,为用户提供更贴合需求的服务。

🚀 快速开始

安装与配置

  1. 克隆项目仓库:

    git clone https://github.com/mikhashev/personal-context-manager.git
    cd pct-mcp-server
    
  2. 安装依赖项:

    npm install
    
  3. 配置上下文存储路径:

    • 编辑 src/storage/contextStorage.ts 文件。
    • 修改 DEFAULT_CONTEXT 对象以适应您的需求。
  4. 启动服务器:

    npm start
    

基本用法

  1. 初始化上下文文件:

    cp data/personal_context.json.example data/personal_context.json
    
  2. 修改 personal_context.json 文件,添加或更新您的个性化数据。

  3. 运行服务器并访问 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"}'
    

✨ 主要特性

  • 持久存储:支持用户数据的持久化存储。
  • 隐私控制:通过规则和限制保护用户隐私。
  • 基于节目的访问:允许按节目(section)对上下文进行细粒度控制。
  • 更新历史:记录上下文的修改历史和版本信息。

📦 安装指南

  1. 克隆项目仓库:

    git clone https://github.com/mikhashev/personal-context-manager.git
    cd pct-mcp-server
    
  2. 安装依赖项:

    npm install
    
  3. 配置上下文存储路径:

    • 编辑 src/storage/contextStorage.ts 文件。
    • 修改 DEFAULT_CONTEXT 对象以适应您的需求。
  4. 启动服务器:

    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 助手的能力,使其能够根据用户的上下文信息提供更智能、更个性化的服务。

自定义上下文

默认的个人上下文包括以下部分:

  • basic_info:姓名、位置等基本信息。
  • preferences:通信风格、学习偏好等。
  • instruction:AI 使用和更新上下文的规则。
  • metadata:版本跟踪和更新历史。

您可以通过编辑 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,如果需要更新数据请修改内容)

高级配置

使用 HTTP 传输

默认实现使用 stdio 传输进行开发。如需在生产环境中使用 HTTP 传输:

  1. 编辑 src/index.ts 文件。
  2. 解注释 HTTP 传输部分。
  3. 配置所需的端口和 CORS 设置。
  4. 重新启动服务器。

扩展功能

  • 支持多用户上下文管理。
  • 实现上下文同步和备份功能。

贡献指南

欢迎贡献代码!请遵循以下步骤:

  1. 叉击仓库并创建分支:

    git checkout -b feature/your-feature-name
    
  2. 提交您的更改:

    git add .
    git commit -m "添加功能:your-feature-name"
    
  3. 推送到仓库并提交拉取请求。

📄 许可证

本项目遵循 MIT 许可证。请查看 LICENSE 文件以获取详细信息。

感谢您的支持!如需帮助或反馈,请随时与我们联系。

  • 0 关注
  • 0 收藏,21 浏览
  • system 提出于 2025-09-20 02:27

相似服务问题

相关AI产品