使用说明
项目简介
Claude Server MCP 是一个基于 Model Context Protocol (MCP) 构建的服务器,专为 Claude 桌面应用程序设计,旨在增强其上下文管理能力。通过该服务器,Claude 可以实现跨会话的持久化上下文、项目特定的上下文组织以及对话的连续性,从而更有效地管理和利用对话历史和项目信息。
主要功能点
- 项目上下文管理: 支持分层结构的上下文组织,允许创建父子上下文关系和上下文之间的交叉引用,并支持项目特定的元数据。
- 对话连续性: 基于会话跟踪上下文,支持对话链,并使用富含元数据的上下文存储和灵活的标签系统来管理对话历史。
- 高效存储: 采用有组织的目录结构和JSON格式存储上下文数据,支持快速查找索引和异步操作,确保高效的数据访问。
- 工具集成: 提供一系列预定义的工具,例如保存项目上下文、保存对话上下文、获取上下文和列出上下文,允许 Claude 通过 MCP 协议调用这些工具来管理上下文。
安装步骤
- 克隆仓库: 首先,你需要克隆该 GitHub 仓库到本地:
git clone https://github.com/davidteren/claude-server cd claude-server - 安装依赖: 使用 npm 安装项目依赖:
npm install - 构建服务器: 构建服务器代码:
构建成功后,服务器文件 'index.js' 将位于 'build' 目录下。npm run build
服务器配置
要将 Claude Server MCP 集成到 Claude 桌面应用程序,你需要编辑 Claude 的配置文件 'claude_desktop_config.json'。该文件通常位于以下路径: '~/Library/Application Support/Claude/claude_desktop_config.json' (macOS) 或 '%APPDATA%\Claude\claude_desktop_config.json' (Windows)。
在 'mcpServers' 部分添加或修改 'claude-server' 的配置。以下是一个示例配置,你需要根据你的实际情况修改 'args' 中的路径:
{ "mcpServers": { "claude-server": { "command": "node", "args": ["/path/to/claude-server/build/index.js"] // 将 "/path/to/claude-server" 替换为你本地仓库的绝对路径 } } }
配置参数说明:
- '"server_name"': 服务器名称,这里固定为 '"claude-server"'。
- '"command"': 启动服务器的命令,这里使用 'node' 运行 JavaScript 文件。
- '"args"': 启动命令的参数,是一个字符串数组。
- 第一个参数应为 'build/index.js' 文件的绝对路径。请务必将 '/path/to/claude-server' 替换为你本地仓库的实际绝对路径。 例如,如果你的仓库在用户目录下的 'claude-server' 文件夹中,那么在 macOS 上可能需要修改为 '"/Users/你的用户名/claude-server/build/index.js"'。
配置完成后,重启 Claude 桌面应用程序,Claude 应该就能识别并使用 Claude Server MCP 服务器了。
基本使用方法
Claude Server MCP 通过 MCP 协议与 Claude 客户端通信,提供了一系列工具供 Claude 调用。以下是一些基本工具的使用示例(这些工具需要在 Claude 客户端中使用,例如通过 'use_mcp_tool' 函数调用,具体客户端调用方式请参考 Claude 客户端的文档):
1. 保存项目上下文 (save_project_context):
use_mcp_tool({ server_name: "claude-server", tool_name: "save_project_context", arguments: { id: "feature-design-v1", // 上下文唯一ID projectId: "my-project", // 项目ID content: "Design discussion...", // 上下文内容 parentContextId: "requirements-v1", // 父上下文ID (可选) references: ["api-spec-v1"], // 引用上下文ID列表 (可选) tags: ["design"], // 标签列表 (可选) metadata: { status: "in-progress" } // 元数据 (可选) } });
2. 保存对话上下文 (save_conversation_context):
use_mcp_tool({ server_name: "claude-server", tool_name: "save_conversation_context", arguments: { id: "chat-2024-01-01", // 上下文唯一ID sessionId: "session-123", // 会话ID content: "Discussion content...", // 上下文内容 continuationOf: "previous-chat-id", // 前续上下文ID (可选) tags: ["meeting"] // 标签列表 (可选) } });
3. 获取上下文 (get_context):
use_mcp_tool({ server_name: "claude-server", tool_name: "get_context", arguments: { id: "feature-design-v1", // 上下文ID projectId: "my-project" // 项目ID (可选,用于项目上下文) } });
4. 列出上下文 (list_contexts):
use_mcp_tool({ server_name: "claude-server", tool_name: "list_contexts", arguments: { projectId: "my-project", // 项目ID (可选,过滤项目上下文) tag: "design", // 标签 (可选,按标签过滤) type: "project" // 类型 (可选, "project" 或 "conversation" 过滤) } });
请注意,以上 'use_mcp_tool' 调用仅为示例,实际使用方式取决于 Claude 客户端的具体实现。你需要参考 Claude 客户端的文档来了解如何正确调用 MCP 服务器提供的工具。
信息
分类
生产力应用