使用说明(Markdown 格式)

  • 项目简介

    • claudemem 的 MCP 服务器实现:通过 MCP 协议向 Claude Code 客户端暴露一组后端工具,用于代码索引、搜索、状态查询、以及向量嵌入相关的模型发现等能力。服务器端采用 stdio 传输,基于 MCP SDK 提供的服务器端框架实现。
  • 主要功能点

    • MCP 核心能力:注册并实现一组 MCP 工具(Tools),如 index_codebase、search_code、get_status、clear_index、list_embedding_models、find_dead_code、find_test_gaps、analyze_impact 等;按请求提供 JSON-RPC 响应或文本通知。
    • 资源与工具管理:后端维护代码索引状态、向量嵌入索引、以及嵌入模型发现与格式化信息。
    • 多语言与多模态支持:支持 TypeScript、Python、Go 等多语言代码单位提取、符号图分析,以及跨语言的资源管理。
    • 传输与接口:以 StdioServerTransport 为 MCP 服务端传输通道,便于在 Claude Code 的本地集成场景中通过管道进行通信;后端可扩展为 SSE/WebSocket 等传输模式。
    • 会话与能力声明:提供索引状态、嵌入模型、语言支持等能力信息,便于客户端在会话中按需调用对应工具。
  • 安装与运行

    • 依赖与构建:该仓库实现了一个可直接运行的 MCP 服务端,基于 Node.js/TypeScript 实现,需具备 Node.js 环境即可运行。
    • 启动方法(MCP 模式)
      • 在命令行执行:claudemem --mcp
      • 该命令将启动一个 MCP 服务器,使用标准的 JSON-RPC 协议与 Claude Code 客户端进行通信,传输通道为标准输入/输出(stdio)。
    • 交互示例
      • Claude Code 客户端将通过 MCP 请求调用工具,例如 index_codebase、search_code、get_status 等,并接收服务器端返回的 JSON-RPC 响应或通知信息。
  • 服务器配置(MCP 客户端与服务器交互的参数设置)

    • 服务器名称(serverName): claudemem-mcp
    • 启动命令(command): claudemem
    • 启动参数(args): ["--mcp"]
    • 传输方式(transport): stdio
    • 说明:该配置用于 MCP 客户端连接服务器时的基本启动信息,确保客户端通过标准输入/输出的 JSON-RPC 通道与服务端通信。
    • 注解:MCP 客户端本身通常只需要提供 serverName、command、args 等启动信息;传输通道在此实现中固定为 stdio,后续可扩展为 SSE/WebSocket 等传输层。
  • 基本使用方法

    • 启动服务器
      • 在包含 claudemem 的工作区执行 CLI 命令:claudemem --mcp
      • 服务器启动后,Claude Code 将通过 MCP 协议发送请求,服务器按请求执行对应工具并返回结果。
    • 常用工具与行为
      • index_codebase:对代码库进行离线索引、向量嵌入构建、以及对摘要的 enrichment(可选)。
      • search_code:在已索引的代码中执行自然语言查询,支持语言过滤、结果限制等。
      • get_status:返回当前索引的状态信息,如已索引的文件、语言、嵌入模型等。
      • clear_index:清空当前工程的索引与元数据。
      • list_embedding_models:列出可用的嵌入模型及其提供者信息。
      • find_dead_code、find_test_gaps、analyze_impact:提供代码健康分析与变更影响评估的工具。
    • 重要注意
      • MCP 客户端需要的仅是服务器的启动命令与传输方式信息,具体请求参数由 Claude Code 客户端通过 MCP 接口传递;服务端内部实现会处理请求和响应的 JSON-RPC 结构。
      • 该实现包含对多语言、跨文件符号图的支持,以及对本地与云端嵌入模型的协同工作能力。
  • 运行与测试建议

    • 先在本地环境中安装并构建 claudemem,然后通过 claudemem --mcp 启动 MCP 服务器。
    • 使用 Claude Code 客户端连接测试,确保能够注册工具并返回格式正确的响应(JSON-RPC)。
    • 如需自测,请通过模拟 MCP 客户端向服务器发送标准 JSON-RPC 请求,验证各工具的输出格式、日志和错误处理是否符合期望。
  • 额外信息

    • 服务器端实现了嵌入模型发现、模型信息格式化、资源跟踪、向量存储等一系列完整的后端能力,具备较完善的 MCP 服务端能力。

注意:以上内容基于仓库中的 src/mcp-server.ts 及相关实现推断,确认该仓库确实包含可运行的 MCP 服务端代码且具备完整的服务端能力。

信息

分类

AI与计算