使用说明

项目简介

Code2Prompt 是一个代码提取工具,可以作为 Model Context Protocol (MCP) 服务器运行,旨在简化为大型语言模型 (LLM) 创建 Prompt 的过程,尤其是在代码分析、生成和其他代码相关任务中。通过将代码库转换为结构化的 Prompt 上下文,Code2Prompt 使得 LLM 能够更好地理解和处理代码相关的查询和指令。作为一个 MCP 服务器,Code2Prompt 能够以标准化的方式向 LLM 客户端提供代码上下文信息。

主要功能点

  • 代码库上下文提取: 自动遍历指定路径的代码库,并将其转换为结构化的 Prompt 格式,为 LLM 提供丰富的代码上下文。
  • 资源管理: 虽然仓库本身不直接体现资源管理界面,但其核心功能是将代码库作为一种“资源”提供给 LLM 客户端,符合 MCP 服务器管理资源的基本概念。
  • Prompt 模版定制: 支持使用 Handlebars 模版引擎自定义 Prompt 生成格式,允许用户根据不同的 LLM 应用场景调整 Prompt 结构。
  • 本地服务运行: 可以作为本地 MCP 服务器运行,通过标准协议与 LLM 客户端通信,为本地 LLM 应用提供代码上下文服务。

安装步骤

Code2Prompt MCP 服务器可以通过 Rust 的包管理器 Cargo 进行安装,前提是您已经安装了 Rust 开发环境。

  1. 安装 Rust 和 Cargo: 如果您的系统尚未安装 Rust,请访问 Rust 官网 按照指引安装 Rust 工具链。

  2. 使用 Cargo 安装 Code2Prompt: 打开终端,运行以下命令以安装 'code2prompt':

    cargo install code2prompt

    安装完成后,'code2prompt' 命令将可以在您的终端中使用。

服务器配置

Code2Prompt MCP 服务器的配置主要体现在启动命令及其参数上。作为 MCP 服务器,它需要被 MCP 客户端调用。以下是一个典型的 MCP 客户端服务器配置示例(JSON 格式),用于指导 MCP 客户端如何连接和使用 Code2Prompt 服务器:

{
  "serverName": "code2prompt-mcp-server",
  "command": "code2prompt",
  "args": [
    "/path/to/your/codebase"
  ],
  "description": "Code2Prompt MCP Server for providing codebase context to LLMs."
}

配置参数注释:

  • 'serverName': 服务器名称,可以自定义,用于在 MCP 客户端中标识该服务器。例如:"code2prompt-mcp-server"。
  • 'command': 启动 MCP 服务器的命令。对于 Code2Prompt,命令是 'code2prompt',前提是 'code2prompt' 已经成功安装并且在系统的 PATH 环境变量中。
  • 'args': 传递给 'code2prompt' 命令的参数列表。
    • '"/path/to/your/codebase"': 必选参数。需要替换为实际的代码库根目录的绝对路径。Code2Prompt 服务器将分析和处理这个目录下的代码。
  • 'description': 服务器描述,用于在 MCP 客户端界面显示服务器的用途和功能,方便用户理解和选择。

注意:

  • MCP 客户端需要能够执行 'code2prompt' 命令。请确保安装 'code2prompt' 后,该命令可以在 MCP 客户端的运行环境中被识别。
  • '"/path/to/your/codebase"' 需要根据您实际要分析的代码库路径进行替换。

基本使用方法

  1. 启动 MCP 服务器 (实际上是配置客户端): 您无需手动启动 Code2Prompt MCP 服务器。当 MCP 客户端需要代码上下文时,它会根据您在客户端配置中提供的 'command' 和 'args' 动态调用 'code2prompt' 命令。

  2. 在 MCP 客户端中使用: 在支持 MCP 协议的 LLM 客户端中,配置上述 JSON 格式的服务器信息。客户端将会在需要代码上下文时,自动调用 Code2Prompt 服务器,并将服务器返回的 Prompt 上下文信息提供给 LLM。

  3. 定制 Prompt 模版 (可选): 如果您需要定制 Prompt 的生成格式,可以使用 '--template' 参数指定自定义 Handlebars 模版文件的路径。您可以在 MCP 客户端的 'args' 数组中添加模版路径参数,例如:

    {
      "serverName": "code2prompt-mcp-server",
      "command": "code2prompt",
      "args": [
        "/path/to/your/codebase",
        "--template",
        "/path/to/your/custom_template.hbs"
      ],
      "description": "Code2Prompt MCP Server with custom prompt template."
    }

    请将 '"/path/to/your/custom_template.hbs"' 替换为您自定义模版文件的实际路径。

通过以上步骤,您就可以将 Code2Prompt 作为 MCP 服务器集成到您的 LLM 应用中,为 LLM 提供结构化的代码库上下文,提升 LLM 在代码相关任务中的表现。

信息

分类

开发者工具