Claude Server 是一个创新的模型上下文协议实现,专注于为 Claude AI 提供高级上下文管理能力。它支持跨会话的持久化上下文、层级化的项目组织、对话连续性跟踪,以及基于元数据的灵活标签系统。通过在 ~/.claude/ 目录中组织存储,实现了高效的上下文查找和异步操作。
工具列表
save_project_context
存储项目特定的上下文信息,支持层级关系。可以创建父子上下文关系、引用其他上下文、添加标签分类和自定义元数据。适用于组织复杂项目的知识结构。
参数:
id(string) (必需): 上下文的唯一标识符projectId(string) (必需): 关联的项目 IDcontent(string) (必需): 上下文内容,可以是代码片段、文档、设计决策等parentContextId(string) (可选): 可选的父上下文引用,用于建立层级关系references(array) (可选): 可选的相关上下文 ID 数组,建立横向关联tags(array) (可选): 可选的分类标签,如 [‘architecture’, ‘security’, ‘api’]metadata(object) (可选): 可选的自定义键值对数据,存储额外信息
save_conversation_context
保存对话线程以实现跨会话的连续性。支持对话链接,可以标记对话是另一个对话的延续,维护完整的对话历史。
参数:
id(string) (必需): 对话的唯一标识符sessionId(string) (必需): 会话引用,关联到特定的交互会话content(string) (必需): 对话内容,包括讨论主题、决策、问题解答等continuationOf(string) (可选): 可选的前序对话 ID,表示此对话是某个对话的延续tags(array) (可选): 可选的分类标签,如 [‘bug-fixing’, ‘feature-request’]
get_context
通过标识符检索存储的上下文。可以指定项目范围以缩小搜索范围,快速获取特定上下文的完整信息。
参数:
id(string) (必需): 上下文标识符projectId(string) (可选): 可选的项目 ID,限定搜索范围到特定项目
list_contexts
查询上下文列表,支持多种过滤条件。可以按项目、标签或类型筛选,快速定位相关上下文信息。
参数:
projectId(string) (可选): 可选的项目 ID 过滤器tag(string) (可选): 可选的标签过滤器,返回包含该标签的所有上下文type(string) (可选): 可选的类型过滤器,区分项目上下文和对话上下文
配置示例
Claude Desktop
1 | { |
使用场景
1. 跨会话项目上下文维护
在长期项目开发中,使用 save_project_context 记录关键的架构决策、API 设计、安全考量等信息。即使在不同的对话会话中,Claude 也能访问之前保存的项目知识,保持对项目背景的完整理解,避免重复解释。
2. 层级化知识组织
通过 parentContextId 建立上下文的父子关系,组织复杂的知识结构。例如,创建一个 ‘microservices-architecture’ 父上下文,下面包含 ‘api-gateway’、’user-service’、’payment-service’ 等子上下文,每个子上下文又可以有自己的子级,形成完整的知识树。
3. 对话历史追踪
使用 save_conversation_context 和 continuationOf 参数维护对话链。当讨论一个 bug 修复时,可以链接到之前关于该功能的设计讨论,再链接到最初的需求对话,形成完整的决策链路,方便追溯和理解演变过程。
4. 标签化信息检索
为上下文添加多个标签,如 [‘performance’, ‘database’, ‘optimization’],后续可以通过 list_contexts 使用标签快速查找相关信息。当需要优化数据库性能时,可以一次性检索所有相关的历史上下文和讨论。
5. 项目迁移和知识传承
当团队成员变动或项目移交时,新成员可以通过 get_context 和 list_contexts 快速了解项目的历史决策、技术选型理由、已知问题和解决方案,大幅缩短新人上手时间,保证项目知识的连续性。
6. 跨上下文关联分析
使用 references 字段建立不同上下文之间的横向关联。例如,一个安全漏洞的修复上下文可以引用相关的代码审查上下文、测试上下文和部署上下文,形成问题的全景视图,帮助全面理解影响范围。
安装指南
前置要求
- Node.js(已安装)
- Claude Desktop 应用程序
- 文件系统写入权限(用于 ~/.claude/ 目录)
安装步骤
- 克隆 claude-server 仓库到本地
- 在项目目录运行 npm install 安装依赖
- 运行 npm run build 构建项目
- 服务器将构建到 build/index.js
- 配置 Claude Desktop:找到配置文件 ~/Library/Application Support/Claude/claude_desktop_config.json
- 添加 claude-server 到 mcpServers 部分,指定 node 命令和 build/index.js 路径
- 重启 Claude Desktop 使配置生效
- 测试:尝试保存一个项目上下文并检索
项目信息
- 源码仓库: https://github.com/davidteren/claude-server
- 许可证: MIT
- 开发语言: TypeScript
- GitHub Stars: 80