使用说明
项目简介
MCP上下文管理器 (Context Manager) 是一组基于 Model Context Protocol (MCP) 构建的服务器,旨在提升 AI 模型在跨工作会话中的持久化上下文能力。它通过领域知识图谱存储和管理项目上下文,并提供统一的接口来访问和管理多个领域服务器。每个领域服务器既可以独立运行,也可以通过中央上下文管理器进行统一管理。
主要功能点
- 持久化上下文: 支持跨会话持久化存储和访问上下文信息,通过 'buildcontext', 'loadcontext', 和 'deletecontext' 工具轻松管理上下文数据。
- 高效访问: 允许 AI 模型精确获取所需的上下文信息,提升检索效率。
- 会话管理: 提供 'startsession' 和 'endsession' 工具,用于会话的开始、跟踪和分析,并更新知识图谱。
- 跨领域支持: 通过单一接口管理多个知识领域,并支持跨领域实体之间的关系建立。
- 多种领域服务器: 包括开发者、项目管理、学生、定性研究和定量研究等多个领域服务器,满足不同应用场景的需求。
安装步骤
-
使用 npx (推荐): 无需安装,直接运行:
npx github:tejpalvirk/contextmanager -
全局安装: 全局安装后,所有服务器将作为命令可用:
npm install -g github:tejpalvirk/contextmanager然后运行上下文管理器:
mcp-server-contextmanager或直接运行特定领域服务器,例如:
mcp-server-developer -
从源码克隆和构建: 用于开发或自定义:
git clone https://github.com/tejpalvirk/contextmanager.git cd contextmanager npm install npm run build然后运行上下文管理器:
node main/index.js
服务器配置
MCP 客户端需要配置 MCP 服务器的启动命令及其参数才能建立连接。以下是 Claude Desktop 中配置 MCP 上下文管理器的示例 JSON 配置信息,您需要根据实际使用的 MCP 客户端进行相应配置:
{ "mcpServers": { "contextmanager": { "command": "npx", "args": [ "-y", "github:tejpalvirk/contextmanager" ], "options": { "port": 3000, "domains": ["developer", "project", "student"] } } } }
参数注释:
- 'server name': 'contextmanager' (服务器名称,客户端用于识别和调用)
- 'command': '"npx"' (启动服务器的命令,这里使用 npx 直接运行 GitHub 仓库)
- 'args':
- '"-y"': (npx 参数,自动确认执行)
- '"github:tejpalvirk/contextmanager"': (npx 参数,指定要运行的 GitHub 仓库地址)
- 'options':
- 'port': '3000' (服务器监听端口,默认为 3000,可以根据需要修改)
- 'domains': '["developer", "project", "student"]' (指定要启用的领域服务器列表,可以根据需要配置)
基本使用方法
-
设置激活领域: 使用 'setActiveDomain' 工具选择要工作的领域,例如切换到开发者领域:
setActiveDomain(domain="developer") -
开始会话: 使用 'startsession' 工具开始一个新的会话:
startsession(domain="developer")工具会返回会话 ID 和最近的会话信息。
-
构建上下文: 使用 'buildcontext' 工具创建新的实体、关系或观察,例如创建一个新的项目实体:
buildcontext(type="entities", data={ "entityType": "project", "name": "MyProject", "description": "一个示例项目", "language": "TypeScript", "framework": "React" }) -
加载上下文: 使用 'loadcontext' 工具加载特定实体的上下文信息,例如加载名为 "MyProject" 的项目上下文:
loadcontext(entityName="MyProject", entityType="project") -
结束会话: 使用 'endsession' 工具结束当前会话,并记录会话总结和更新知识图谱:
endsession(sessionId="session_id_here", stage="assembly", stageNumber=6, totalStages=6, nextStageNeeded=false)
更多详细使用方法和工具参数,请参考仓库 README 文档和各个领域服务器目录下的 README 文件。
信息
分类
AI与计算