jCodeMunch MCP 服务器

使用说明内容(Markdown格式)

jCodeMunch MCP 服务器

  • 项目简介
    • 这是一个基于 MCP(Model Context Protocol)的服务器端实现,旨在为大语言模型(LLM)客户端提供结构化的上下文资源、工具执行能力与提示模板渲染等功能。服务器通过 JSON-RPC 与客户端通信,能够托管和管理资源(源码资源、文件内容等)、注册并执行工具(如索引代码库、获取文件内容、搜索符号等)、以及渲染和提供提示模板相关的数据。默认通过 MCP 提供的 stdio 传输通道进行通信,便于嵌入到各种模型工作流中。
  • 主要功能点
    • MCP 核心能力实现
      • 提供对资源的访问能力(如索引、检索、获取文件内容等)
      • 注册与执行工具(例如 index_repo、index_folder、get_file_outline、search_symbols 等)
      • 提供与 Prompt、摘要相关的支持(通过 summarizer 系列实现符号摘要)
    • JSON-RPC 交互
      • 通过标准的 JSON-RPC 封装请求与响应,支持客户端发起读取、执行工具、获取资源等请求
    • 本地化与本地存储
      • 使用本地存储(CodeIndex / Content Cache)进行离线快速访问,保证隐私与可控性
    • 安全与可扩展性
      • 集成了安全检查(文件/路径过滤、隐私保护、二进制检测等),并提供插件式的工具扩展能力
  • 安装步骤
    1. 安装依赖(Python 3.10+)并获取源码
    2. 直接运行服务器(见下文“服务器配置”与“基本使用”部分)
    3. 如需与本地/远程客户端对接,确保客户端能够通过 MCP 的 JSON-RPC 调用相应工具
  • 服务器配置(MCP 客户端需要的最小连接信息) 请将下面的配置作为 MCP 客户端对接该服务器的模板,JSON 仅用于描述连接信息,不是服务器实现代码。实际使用时,请把以下字段填入客户端的配置中: { "server": "jcodemunch-mcp", "command": "uvx", "args": ["jcodemunch-mcp"] } 注释:上述配置表示服务器名称为 jcodemunch-mcp,客户端通过 uvx 启动该 MCP 服务器(uvx 用来按需解析并启动本地安装的 Python 包中的脚本)。
  • 基本使用方法
    1. 启动服务器
      • 通过命令行启动时,可以使用 uvx jcodemunch-mcp(或者直接 python -m jcodemunch_mcp.server)来启动服务器。
    2. 客户端对接
      • 通过 MCP 客户端(如 Claude/VS Code 等集成,或其他支持 MCP 的客户端)连接后即可发送 JSON-RPC 请求,调用服务器暴露的工具(如 index_repo、get_file_outline、search_text 等)来获取资源与上下文信息。
    3. 日志与调试
      • 可以通过配置环境变量开启调试日志、输出日志到文件等,以便诊断未索引、权限、路径等问题。
  • 参考实现要点
    • 服务器暴露了 12 种工具(如 index_repo、index_folder、list_repos、get_file_tree、get_file_outline、get_file_content、get_symbol、get_symbols、search_symbols、invalidate_cache、search_text、get_repo_outline),并通过 JSON-RPC 返回结构化结果与深度元信息。
    • 使用本地缓存与符号索引,便于在离线环境或受控环境中快速提供上下文信息。
    • 服务器封装了会话管理、能力声明,以及对传输协议的可扩展性设计,方便未来扩展传输通道(如 SSE、WebSocket 等)。

服务器信息