Codebase Context Dumper 工具

@lex-tools/codebase-context-dumper
0 Stars 84 次浏览 lex-tools 更新于 2026-08-23

一种设计用于轻松将代码库上下文转储到大型语言模型(LLMs)中的模型上下文协议(MCP)服务器。

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "codebase-context-dumper": {
      "args": [
        "-y",
        "@lex-tools/codebase-context-dumper"
      ],
      "command": "npx"
    }
  }
}

服务介绍

codebase-context-dumper MCP 服务器

npm version

这是一个设计用于将您的代码库上下文轻松导入大型语言模型(LLMs)的 Model Context Protocol (MCP) 服务器。

为什么使用这个工具?

大型语言模型中的大上下文窗口非常强大,但手动从大型代码库中选择和格式化文件是乏味的。此工具通过以下方式自动化该过程:

  • 递归扫描您的项目目录。
  • 包括指定目录树中未被 .gitignore 规则排除的文本文件。
  • 自动跳过二进制文件。
  • 将内容与清晰的文件路径标记连接起来。
  • 支持分块处理,以处理大于 LLM 上下文窗口的代码库。
  • 与支持 MCP 的客户端无缝集成。

使用方法(推荐:npx)

使用此工具最简单的方法是通过 npx,它可以在不需要本地安装的情况下运行最新版本。

配置您的 MCP 客户端(例如 Claude Desktop、VS Code 扩展)以使用以下命令:

{
  "mcpServers": {
    "codebase-context-dumper": {
      "command": "npx",
      "args": [
        "-y",
        "@lex-tools/codebase-context-dumper"
      ]
    }
  }
}

然后,MCP 客户端将能够调用此服务器提供的 dump_codebase_context 工具。

功能与工具详情

工具:dump_codebase_context

递归读取指定目录中的文本文件,尊重 .gitignore 规则并跳过二进制文件。将内容与文件路径头/尾连接起来。支持对大型代码库进行分块输出。

功能

  • 扫描在 base_path 中提供的目录。
  • 尊重所有级别的 .gitignore 文件(包括嵌套的文件,默认情况下还包括 .git)。
  • 检测并跳过二进制文件。
  • 读取每个有效文本文件的内容。
  • 在每个文件内容前添加一个头部 (--- START: relative/path/to/file ---) 和尾部 (--- END: relative/path/to/file ---)。
  • 将所有处理过的文件内容连接成一个字符串。

输入参数

  • base_path(字符串,必需):要扫描的项目目录的绝对路径。
  • num_chunks(整数,可选,默认值:1):将输出分割成的总块数。必须 >= 1。
  • chunk_index(整数,可选,默认值:1):要返回的块的基于 1 的索引。要求 num_chunks > 1 并且 chunk_index <= num_chunks

输出:返回连接(可能已分块)的文本内容。

本地安装与使用(高级)

如果您更喜欢运行本地版本(例如,用于开发):

  1. 克隆仓库:
    git clone git@github.com:lex-tools/codebase-context-dumper.git
    cd codebase-context-dumper
    
  2. 安装依赖项:
    npm install
    
  3. 构建服务器:
    npm run build
    
  4. 配置您的MCP客户端以指向本地构建输出:
    {
      "mcpServers": {
        "codebase-context-dumper": {
          "command": "/path/to/your/local/codebase-context-dumper/build/index.js" // 调整路径
        }
      }
    }
    

贡献

欢迎贡献!有关开发、调试和发布新版本的详细信息,请参阅CONTRIBUTING.md

许可证

本项目根据Apache License 2.0许可。有关详细信息,请参阅LICENSE文件。